我创建了一个基本的角度$ http.post请求来接收一些数据。为了接收数据,我需要在标题中提供密钥。
即使我已明确发送密钥,服务器也会响应密钥丢失。
100%它不是服务器,因为我使用了提供所需响应的在线卷曲工具。
$http.post(url, {
data:{username: username,password: password},
headers:{'Content-Type': 'application/x-www-form-urlencoded','key': key},
})
.then(function(response){
console.log(response)
})
如果有人能够发现我在这里做错了什么,我们将不胜感激。感谢。
答案 0 :(得分:-1)
在标题键后面有一个尾随逗号,也许这会让事情失效?
$http.post(url, {
data:{username: username,password: password},
headers:{'Content-Type': 'application/x-www-form-urlencoded','key': key}, // Remove this comma
})
.then(function(response){
console.log(response)
});
答案 1 :(得分:-1)
之前我遇到过类似的问题,并通过在app config阶段向httpProvider添加transformRequest来解决它。感谢在此提供代码的kzar:
答案 2 :(得分:-1)
根据docs应该是:
快捷方式
$http.post('http://localhost:9191/api/signin', {
username: 'some username',
password: 'some password'
}, {
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'key': '123'
}
})
.then(function(response) {
console.log(response)
});
长版
$http({
method: 'POST',
url: 'http://localhost:9191/api/signin',
data: {
username: 'some username',
password: 'some password'
},
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'key': '123'
}
}).then(function(response) {
console.log(response)
});
经过测试并且工作正常。