猿问

跨域Ajax调用与php请求

我读过有关跨源请求的文章。考虑这个资源链接:

https://coinmap.org/api/v1/venues/?mode=list

为什么我可以使用 PHP 向此链接发出请求并获取数据,但我无法使用 ajax 调用执行相同的操作?我收到此错误:

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://coinmap.org/api/v1/venues/?mode=list. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing).

如果请求被阻止,为什么我可以使用PHP请求而不是ajax?


千万里不及你
浏览 78回答 2
2回答

米脂

您说您可以使用 PHP 发出请求,这听起来好像您有一个锚点,其中 href=https://coinmap.org/api/v1/venues/?mode=list 。CORS 仅阻止通过 javascript 发起的请求。由于用户点击锚标记而发出的请求不受 CORS 限制。

慕田峪9158850

简单的答案:浏览器会阻止这种情况。因此,请输入将 HTML 输出到浏览器标头的代码:header('Access-Control-Allow-Origin: https://coinmap.org');并且您的 AJAX 调用将被允许连接到那里。
随时随地看视频慕课网APP
我要回答