繁体   English   中英

Angular http post请求 - 请求的资源上不存在“Access-Control-Allow-Origin”标头

[英]Angular http post request - No 'Access-Control-Allow-Origin' header is present on the requested resource

我正在尝试使用angular http post将数据发送到servlet,

var httpPostData = function (postparameters,postData){

     var headers = {
                'Access-Control-Allow-Origin' : '*',
                'Access-Control-Allow-Methods' : 'POST, GET, OPTIONS',
                'Accept': 'application/json'
            };
  return $http ({

    method  : 'POST',
    url     : 'http://localhost:8080/json/jasoncontroller',
    params  : postparameters,
    headers: headers,
    data    : postData
   }).success (function (responseData){
         return responseData.data;
   })
}

但我继续得到错误, 请求资源上没有'Access-Control-Allow-Origin'标头。 因此不允许原点'null'访问。

我确实在我的servlet上设置了以下标题

    response.addHeader("Access-Control-Allow-Origin", "*");
    response.addHeader("Access-Control-Allow-Methods", "POST, GET, PUT, OPTIONS, DELETE");
    response.addHeader("Access-Control-Max-Age", "3600");
    response.addHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");

如果我从http帖子中删除数据它工作正常,但数据没有运气。

在此输入图像描述

实际上在一些框架中发生了两次调用,

  • 用于检查可用方法的选项,
  • 然后有实际的电话。

选项只需要空答案200 OK

if(request.methord == 'OPTIONS'){
  res.send(200);
  } else {
   next();
  }

你也可以安装这个chrome扩展来启用cors,这是最简单的方法!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM