无法发出https <?xml version="1.0" encoding="UTF-8"?>
<jcr:root xmlns:cq="http://www.day.com/jcr/cq/1.0"
xmlns:jcr="http://www.jcp.org/jcr/1.0"
xmlns:nt="http://www.jcp.org/jcr/nt/1.0"
jcr:primaryType="nt:unstructured"
sampleProperty="Default value of sampe property">
请求 - 将其取回:
XMLHttpRequest
如果我将网址替换为Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'https://localhost:8443' is therefore not allowed access.
,那很好,但www.google.com
会做同样的事情。
当我使用Postman / JaSON Chrome扩展程序时,它可以正常运行,所以我尝试https://www.google.com
,但这也不起作用。
open -a Google\ Chrome --args --disable-web-security
答案 0 :(得分:0)
&#34; Access-Control-Allow-Origin&#34;出于安全原因,header设置为服务器端。
如果您可以访问服务器,则可以执行以下操作:
header("Access-Control-Allow-Origin: *");
然而,由于显而易见的原因,这并不安全。您应该始终允许尽可能少的外部访问。
最近我遇到了同样的问题。我所做的只是使用我自己的服务器,从那里向api发出请求,然后让脚本向我的服务器发出请求(从中可以设置访问控制头)。所以基本上,不是向第三方客户端(来自javascript)发出请求,而是将其作为服务器端,然后通过javascript从服务器获取数据。