在angularjs中,我必须为POST设置自定义标头
所以我做了:
var config = { 'Content-Type': 'application/x-www-form-urlencoded', 'TenantCode': 'MYTENANT', 'LoginType': 'PASSW' };
所以我执行帖子
$http.post(urlBase + '/Token', data, config)
无论如何,当我检查我的请求时
OPTIONS /Token HTTP/1.1
Host: test.strokein.it
Connection: keep-alive
Access-Control-Request-Method: POST
Origin: http://localhost:54599
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/46.0.2490.86 Safari/537.36
Access-Control-Request-Headers: accept, content-type
Accept: */*
Referer: http://localhost:54599/index.html
Accept-Encoding: gzip, deflate, sdch
Accept-Language: it-IT,it;q=0.8,en-US;q=0.6,en;q=0.4
并且我没有看到我的标头参数
为什么呢?问题是什么?
答案 0 :(得分:0)
我认为您的配置需要看起来像这样:
var config = {
headers : {
'Content-Type': 'application/x-www-form-urlencoded',
'TenantCode': 'MYTENANT',
'LoginType': 'PASSW'
}
};
查看this配置规范。
答案 1 :(得分:0)
那是你的飞行前请求
您有一个CORS问题,因为您正在从Comparable.S
到localhost
进行测试
轻松修复就是将测试脚本上传到服务器。
但一般情况下,浏览器会在收到服务器的OK CORS响应后再发送一个请求,即
test.strokein.it
然后,您应该看到自定义标头以及该POST请求的数据。
在此处阅读更多内容:https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS