繁体   English   中英

Angular Post Request Cors问题

[英]Angular Post Request Cors issue

当我尝试向c#web api发布请求时,我收到了CORS问题。 以下是错误:

CORS策略阻止了对来自“客户端URL”的“不同域中的api url”的XMLHttpRequest的访问:对预检请求的响应未通过访问控制检查:没有“Access-Control-Allow-Origin”标头出现在请求的资源。

GET请求相同的API调用正在运行。

两个站点都部署启用了Windows身份验证。

我正在使用Angular io,1.7。**和打字稿。 下面是我用打字稿中的post请求调用api的方法。

let httpHeader = new HttpHeaders();
httpHeader = httpHeader.set('Content-Type', 'application/json');

this.http.post(this.apiUrl, this.bodyObject,
  {
  headers: httpHeader,
  withCredentials:true
}).pipe(map(response => {
  return response;
})).subscribe(result => {
  console.log(result);
}, function (err) {
  console.log(err);
});

我首先想到它可能是api cors问题,并使用下面的jquery代码进行测试,它正在运行。

   <script>

       $.ajax({
            url:apiUrl,
            type: 'post',
            data: {
                serviceName: "Country"
            },
            xhrFields: {
                    withCredentials: true
                },
            dataType: 'json',
            success: function (data) {
                console.info(data);
            },
            error: function (err) {
                console.error(err);
            }
        });

  </script>

所以我想,我与我的角度代码有关。 你能不能突出我可能是什么问题。

尝试在$ .ajax中添加它

headers: {
                    'Access-Control-Allow-Origin': '*',
                    'Content-Type':'application/json'
          },
crossDomain: true,

暂无
暂无

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

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