Meteor.http.call 不允许 Access-Control-Allow-Origin

2024-04-16

当我尝试使用 Meteor 调用外部服务器进行 JSON 查询时Meteor.http.call("GET")方法我收到错误消息“Access-Control-Allow-Origin不允许”。

如何允许我的 Meteor 应用程序向其他服务器发出 HTTP 调用? 现在我在本地主机上运行它。

我运行的代码是这样的:

Meteor.http.call("GET", 
                 "http://api.vasttrafik.se/bin/rest.exe/v1/location.name?authKey=XXXX&format=json&jsonpCallback=processJSON&input=kungsportsplatsen", 
                  function(error, result) {
                          console.log("test");    
                      }
                 );

StackOverflow 上还有其他类似的问题。

当您从客户端 (AJAX) 执行此操作时,您会受到尝试连接的服务器的限制。

解决此问题的一种方法是,如果您有权访问外部服务器,则可以通过以下方式修改头文件以允许部分或全部来源:

Access-Control-Allow-Origin: *

但是,如果您将调用放在服务器端并且不提供回调函数,则调用将同步进行,因此不使用 AJAX,并且应该会成功。

Here's

Meteor.methods({checkTwitter: function (userId) {
   this.unblock();
   var result = Meteor.http.call("GET", "http://api.twitter.com/xyz", {params: {user: userId}});
   if (result.statusCode === 200) return true
   return false;
}}); 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Meteor.http.call 不允许 Access-Control-Allow-Origin 的相关文章

随机推荐