我们正在尝试使用我们的Office Excel加载项来联系我们自己的Web API服务之一,以便它可以从中发送和接收数据。对于要授权的请求,我们必须填写Authorization标头属性。这就是我们如何处理请求,这在我们所有的普通Web应用程序中都能很好地运行。
this.LoginAuth = function (authString) {
$http.defaults.headers.common.Authorization = 'Basic ' + authString;
return $http({
url: MainFactory.GetWebAPILocation() + '/API/User/AddInLoginAuth',
dataType: 'json',
method: 'POST',
data: {},
headers: {
"Content-Type": "application/json"
}
});
}
但是,当通过加载项发出请求时,Authorization属性已被清除,导致我们的请求失败。这个属性的清除是由Excel完成的吗?如果是这样,有没有办法阻止它?
事实证明这是我们的Web API服务中的CORS问题。