首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >获取请求未通过访问控制检查:请求的资源上不存在“access - control -Allow-Origin”标头

获取请求未通过访问控制检查:请求的资源上不存在“access - control -Allow-Origin”标头
EN

Stack Overflow用户
提问于 2015-11-20 14:15:42
回答 2查看 231.5K关注 0票数 57

我试图从我的应用程序向Tomcat服务器发送一个Ajax请求,但是我得到了这个错误(我的web应用程序在Chrome上运行):

对印前检查请求的

响应未通过访问控制检查:请求的资源上不存在“access - control -Allow-Origin”标头。因此不允许访问源'null‘。响应的HTTP状态代码为403。

我试过使用

代码语言:javascript
复制
'Access-Control-Allow-Origin' : 'http://localhost:8080/app',

但它并没有起作用。

我的Ajax代码:

代码语言:javascript
复制
 var arr = [1];
   $.ajax({ 
   url: 'http://localhost:8080/app',
   type: 'POST',
   contentType:'application/json',
   headers: {
   'Access-Control-Allow-Origin' : 'http://localhost:8080',
   },
       data: JSON.stringify(arr[0]),
       success: function(data){
        //On ajax success do this
             alert(data);
          }
     });
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-11-20 14:55:44

基本上,要进行跨域AJAX请求,被请求的服务器应该允许跨域资源共享(CORS)。你可以从这里阅读更多关于它的内容:http://www.html5rocks.com/en/tutorials/cors/

在您的场景中,您将在客户端中设置标头,实际上需要将其设置为http://localhost:8080/app服务器端代码。

如果您使用的是PHP Apache服务器,则需要在.htaccess文件中添加以下内容:

代码语言:javascript
复制
Header set Access-Control-Allow-Origin "*"
票数 35
EN

Stack Overflow用户

发布于 2016-06-20 22:22:27

请求REST服务时的

您需要使用Spring注解在REST服务的端点上允许CORS (资源的跨域共享):

代码语言:javascript
复制
@CrossOrigin(origins = "http://localhost:8080")

非常好的教程:https://spring.io/guides/gs/rest-service-cors/

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33820142

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档