Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Meteor/Stripe:在Meteor中尝试将数据发布到服务器端路由时,接收XMLHttpRequest无法加载错误_Javascript_Meteor_Stripe Payments - Fatal编程技术网

Javascript Meteor/Stripe:在Meteor中尝试将数据发布到服务器端路由时,接收XMLHttpRequest无法加载错误

Javascript Meteor/Stripe:在Meteor中尝试将数据发布到服务器端路由时,接收XMLHttpRequest无法加载错误,javascript,meteor,stripe-payments,Javascript,Meteor,Stripe Payments,几个明显的项目: 我用的是流星路由器。 我已经通过Meteorite安装了电子邮件包 以下是我试图做的: 当用户注册时,我有条带设置来创建他们端的客户(工作) 创建客户后,Stripe会创建一个事件,并通过webhooks将post数据发送到,与我共享该事件的数据 当收到post数据时,我的应用程序提取客户的电子邮件地址并触发Meteor方法,该方法向该地址发送电子邮件 我遇到的问题是,在第一次尝试时(即,当原始事件发生时),我在Stripe中收到一个503错误。然而,如果我再次从Stripe

几个明显的项目:

我用的是流星路由器。 我已经通过Meteorite安装了电子邮件包


以下是我试图做的:

  • 当用户注册时,我有条带设置来创建他们端的客户(工作)
  • 创建客户后,Stripe会创建一个事件,并通过webhooks将post数据发送到,与我共享该事件的数据
  • 当收到post数据时,我的应用程序提取客户的电子邮件地址并触发Meteor方法,该方法向该地址发送电子邮件 我遇到的问题是,在第一次尝试时(即,当原始事件发生时),我在Stripe中收到一个503错误。然而,如果我再次从Stripe内部发出请求,Meteor会接受它并发送电子邮件。为什么它会在第二次(以及之后的几次)起作用,而不是第一次。这是我目前的代码:

    if(Meteor.isServer) {
    
      Meteor.startup(function () {
        process.env.MAIL_URL = /* OBSCURED */;
      });
    
      Meteor.methods({
    
        sendEmail: function(address, subject, text) {
    
          Email.send({
            to: address,
            from: "test@myapp.com", /* OBSCURED ADDRESS */
            subject: subject,
            text: text
          });
    
        }
    
      });
    
      Meteor.Router.add(
    
        '/stripe', 'POST', function() {  
    
          // Grab Post Data
          post = this.request.body;
    
          // Test Type of Post
                   type = post.type
          customerEmail = post.data.object.email;        
    
          var email = [customerEmail, "Welcome to My App!", type];
    
          Meteor.apply("sendEmail", email);
    
          return [200, "Success"];
    
      });
    
    }
    
    我注意到,当发送条带请求时,我在控制台中看到以下内容:

    XMLHttpRequest cannot load https://ddp--0675-[myapp].meteor.com/sockjs/903/1szdgor_/xhr. Origin http://[myapp].meteor.com is not allowed by Access-Control-Allow-Origin.
    

    我在这里遗漏了什么?

    当错误源于browser@Akshat客户机上没有任何信息。“/stripe”路由触发所有函数。只有当Stripe将数据发布到该路由时,它才会这样做。否则什么也没有。这是否回答了您的问题,还是您在寻找其他内容?我的意思是,
    访问控制允许源代码
    只能来自浏览器。问题在于上面的代码中没有XHR请求,自定义服务器路径中也没有meteor代码,因为它只是“成功”(也没有html)。所以这个错误可能不会影响你的应用程序。我知道有人已经解决了这个问题。我会试着让他在这里发布答案(如果他不能,我会在得到详细信息后自己发布)。