如何在AngularJS中处理CORS请求

如何在AngularJS中处理CORS请求,angularjs,web-services,cors,Angularjs,Web Services,Cors,我在调用web服务时遇到了AngularJS中CORS请求的问题,但使用jQuery可以调用相同的服务 注意:从服务器端我们收到标题“访问控制允许源:*”,这些服务在jQuery应用程序中运行良好 这里我发布了我的AngularJS代码和jQuery代码 AngularJS: $http({ method: 'POST', url: $rootScope.host + "UserLogin", //headers: { 'Content-Type

我在调用web服务时遇到了AngularJS中CORS请求的问题,但使用jQuery可以调用相同的服务

注意:从服务器端我们收到标题“访问控制允许源:*”,这些服务在jQuery应用程序中运行良好

这里我发布了我的AngularJS代码和jQuery代码

AngularJS:

$http({
        method: 'POST',
        url:  $rootScope.host + "UserLogin",
        //headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
        data: {
            "uname": $scope.uname,
            "password": $scope.password
        },
    }).then(function (success) {
                $scope.loginDetails = success;
                console.log($scope.loginDetails);
    }),function (error){
            console.log(error);
});
如果我像
headers:{'Content-Type':'application/x-www-form-urlencoded'}这样传递头
可以ping服务,但我的请求不是JSON格式的

如果我将标题更改为
“Content-Type”:“application/json”
,则

XMLHttpRequest无法加载

对飞行前请求的响应未通过访问控制检查:

请求的资源上不存在“Access Control Allow Origin”标头。因此,不允许访问源“”

我不知道这个错误的原因是什么

$.ajax({
    url: BASE_URL + "UserLogin",
    type: "POST",
    xhrFields: {withCredentials: true},
    data: {
        "uname": uname,
        "password": password
    },
    cache: false,
    success: function (result, textStatus, request) {
        console.log(result);
    },
    error: function (e) {
        console.log("Error in login service call:"+JSON.stringify(e));
    }
});

此jQuery正在以json格式发送我的请求。

尝试传递如下标题

headers: { 'Content-Type': 'application/json' }

尝试像这样传递标题

headers: { 'Content-Type': 'application/json' }

如果我更改了标头,则我的服务调用不会ping服务器,并显示“XMLHttpRequest无法加载。对飞行前请求的响应未通过访问控制检查:请求的资源上不存在“访问控制允许源站”标头。因此,不允许源站“”访问。”如果我更改了标头,我的服务调用未ping服务器并显示“XMLHttpRequest无法加载。对飞行前请求的响应未通过访问控制检查:请求的资源上不存在“access control Allow Origin”标头。因此不允许访问源“”