这可能是一个愚蠢的问题,但我找不到任何解决方案。我正在处理一个跨领域的问题。所以我通过搜索知道我需要设置我的Access-Control-Allow-Origin:
或Origin
标签。但是在哪里??建议在页眉中使用这些。
我看不出有什么能解释这一点。有人能告诉我这个标签放在哪里以及怎么放吗!!
在head
标签中?还是在DOCTYPE
中?请帮忙。。。。。。我需要使用JavaScript或其他什么吗?
一种方法是将代码放在服务器端:
response.addHeader("Access-Control-Allow-Origin", "*");// To allow all domains
仅限制对特定域的访问:
response.addHeader("Access-Control-Allow-Origin", "http://www.example.com");
我已经在javaservlet中使用了上面的代码,如果您使用不同的语言,您可以使用类似的方法。
这应该作为http头传递,它与http协议一起使用。您的客户端向服务器发出一个请求,看起来像这样:
获取/cors HTTP/1.1原产地:http://api.bob.com主持人:api.alice.com接受语言:en-US连接:保持活动用户代理:Mozilla/5.0…
在您的响应中,您的服务器端代码必须手动为Access Control Allow Origin添加http标头。很多时候,人们会简单地做一些事情,比如:
response.addHeader("Access Control Allow Origin","*");
但是,如果您需要进行任何类型的身份验证,请记住,如果您正在发送凭据(通过在请求中使用Access Control Allow credentials标头,或在jQuery ajax调用中使用credentials设置),则必须在响应标头中指定允许的来源:
response.addHeader("Access Control Allow Origin"http://api.bob.com");
此外,一定要处理飞行前的OPTIONS请求。
如果这没有帮助,这个网站几乎涵盖了所有场景:http://www.html5rocks.com/en/tutorials/cors/