2015-10-15 146 views
1

我在尝试调用WebApi时遇到了问题,我需要在请求头中发送授权凭证,但是我没有弄清楚。AngularJs http请求头不会改变

我resquest头需要像我的REST测试

Authorization:Basic dXNlcm5hbWU6cGFzc3dvcmQ= 

但是,所产生的请求头的这一形象时,我尝试使用此代码块

$http.defaults.headers.Authorization = 'Basic ' + credentials; 
return $http.post('http://localhost:2703/api/Authenticate'); 

来设置它的角或者这

return $http.post('http://localhost:2703/api/Authenticate', { 
    headers: { 'Authorization': 'Basic ' + credentials } 
}); 

我的请求标题变成这样一个

Access-Control-Request-Headers: accept, authorization 

有人能告诉我我做错了什么吗?任何帮助将不胜感激。 :)

+0

我发现了这个问题。当我添加标题到我的POST调用时,该方法更改为OPTIONS,我正在使用跨域。试图找出如何解决它。 –

回答

0

我无法解析使用跨域请求我的问题,所以,我已经配置我的网络API和Web应用程序在同一个域中。这样做,我可以正常更改标题,并根据需要发送发布请求。

1

你可以做这样的事情:

var header = {headers: {'Authorization': 'Basic ' + credentials}} 
$http.post(url, payload, header) 
    .success(function (data) { 
     //stuff 
    } 
+0

这样做标题仍然一样。授权已添加到“访问控制请求头”。我想我需要添加一个名为“授权”的新标题。我真的不知道需要做什么。 –