Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 无法检索$ajax post请求的自定义标题_Jquery_Ajax_Asp.net Web Api_Custom Headers - Fatal编程技术网

Jquery 无法检索$ajax post请求的自定义标题

Jquery 无法检索$ajax post请求的自定义标题,jquery,ajax,asp.net-web-api,custom-headers,Jquery,Ajax,Asp.net Web Api,Custom Headers,我正在使用.NETWebAPI。对于授权,我在标题中添加自定义标记,如下所示: 问题是我无法从客户端的响应中检索“授权令牌”。我尝试过Angular的$http和jQuery$ajax。当我使用Fiddler时,我会得到响应中发送的所有标题。包括自定义“授权令牌”标头 这是jQuery$ajax代码: $.ajax({ type: "POST", url: "http://localhost:16879/api/authentication/register", data: { Ema

我正在使用.NETWebAPI。对于授权,我在标题中添加自定义标记,如下所示:

问题是我无法从客户端的响应中检索“授权令牌”。我尝试过Angular的$http和jQuery$ajax。当我使用Fiddler时,我会得到响应中发送的所有标题。包括自定义“授权令牌”标头

这是jQuery$ajax代码:

$.ajax({
 type: "POST",
 url: "http://localhost:16879/api/authentication/register",
 data: {
 Email: "blablagmail.com",
 Password: "password1"
}
}).complete(function( a, b) {
 console.log(b.getAllResponseHeaders();
});
结果是:

使用Fiddler的结果:

是否可以在$ajax请求中获取从服务器发送的所有标头


解决方法是在主体中实际发送令牌,并在从客户端执行另一个请求时设置自定义头。但我希望通过在响应的标题中获取“Authorize token”来实现这一点。

您最好使用body来传递在


我看到一些线程说,当响应不成功时,jquery可能不会设置自定义头。

在浏览器中的跨域调用中,自定义响应头没有正确读取。在PhoneGap移动应用程序中,可以为跨域呼叫读取自定义响应标题,即使它在浏览器中不起作用。