我正在尝试使用$ http.post调用.NET Web API服务来传递授权标头。
如果我使用它:
$http.post(urls.getEmployeeInfo,
{
withCredentials: true,
headers:{ 'Authorization': 'Basic ' + btoa(username + ":" + password)}
}
);
Authorization标头不会发送到我的服务。
以下作品:
$http({
url: urls.getEmployeeInfo,
method: "POST",
withCredentials: true,
headers: {
'Authorization': 'Basic ' + btoa(username + ":" + password)
}
});
为什么$ http.post不发送授权标题?
由于
答案 0 :(得分:4)
$http
只接受一个参数:config
[documentation]
$http.post
有三个参数:url
,data
,(和可选)config
[documentation]
因此,如果要传递配置选项(例如标题),则需要将它们作为第三个参数发送,而不是第二个参数:
$http.post(urls.getEmployeeInfo, postData,
{
withCredentials: true,
headers:{ 'Authorization': 'Basic ' + btoa(username + ":" + password)}
}
);