Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/393.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 Foursquare返回';无访问控制允许原点';报头存在错误_Javascript_Angularjs_Xmlhttprequest_Foursquare - Fatal编程技术网

Javascript Foursquare返回';无访问控制允许原点';报头存在错误

Javascript Foursquare返回';无访问控制允许原点';报头存在错误,javascript,angularjs,xmlhttprequest,foursquare,Javascript,Angularjs,Xmlhttprequest,Foursquare,我正在给foursquare OAuth URL打GET电话。浏览器控制台打印以下错误 XMLHttpRequest cannot load https://foursquare.com/oauth2/authenticate?client_id=DF4I1TGNVHAM40PDLOHZQZ…onse_type=code&redirect_uri=http://localhost:9000/auth/foursquare/callback. No 'Access-Control-Allo

我正在给foursquare OAuth URL打GET电话。浏览器控制台打印以下错误

XMLHttpRequest cannot load https://foursquare.com/oauth2/authenticate?client_id=DF4I1TGNVHAM40PDLOHZQZ…onse_type=code&redirect_uri=http://localhost:9000/auth/foursquare/callback. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:9000' is therefore not allowed access.
以下是进行调用的代码段:

$http.get(url).success(function(data,status,headers,config){
});
但如果我将一个按钮链接到此url,浏览器会将我带到身份验证页面


这有什么区别?当URL链接到某个按钮时,它为什么工作?当对该URL进行GET调用时,它为什么不工作?

Ajax不允许从一个域向另一个域发出请求,除非服务器提供访问控制允许源(CORS)头。允许在域之间进行链接

Mozilla提供了一些关于什么是允许的,什么是不允许的好信息

  • 通常允许跨源写入。例如链接、重定向和表单订阅。某些很少使用的HTTP请求需要飞行前处理
  • 通常允许跨源嵌入,例如图像、脚本
  • 通常不允许跨源读取,例如ajax调用

了解CORS。在这种情况下,您将无法使用AJAX。谢谢您。你的回答和你提供的链接帮助我理解了我的问题