JavaScript/jQuery:无法获得“WWW-Authenticate”响应标头

Posted

技术标签:

【中文标题】JavaScript/jQuery:无法获得“WWW-Authenticate”响应标头【英文标题】:JavaScript/jQuery: Can´t get "WWW-Authenticate" response header 【发布时间】:2015-11-12 13:36:07 【问题描述】:

我有以下 jQuery 代码:

$.ajax(
  type: "GET",
  url: url,
  complete: function( data )
    console.info( data.getResponseHeader("WWW-Authenticate") );
  
);

这将返回 null。在 Firebug 中,我可以看到,标头“WWW-Authenticate”是由服务器发送的。

有什么方法可以获取标题吗?如果我可以在 Firebug 中看到它,那么应该可以在 jQuery 中得到它。

我已经尝试过类似的东西:

beforeSend: function(xhr)
    xhr.setRequestHeader( "withCredentials", true );
    xhr.setRequestHeader( "Access-Control-Expose-Headers", "WWW-Authenticate" );
    xhr.setRequestHeader( "Access-Control-Allow-Headers", "WWW-Authenticate" );
  

如果我尝试:

data.getAllResponseHeaders()

// Returns:
Cache-Control: private
Content-Type: text/html

但在 Firebug 中,我看到的标题要多得多……更多。

非常感谢!

非常感谢!

【问题讨论】:

【参考方案1】:

如果您使用 CORS 请求,在 firebug 中看到所有其他标头数据是正常的,但在您的 xHR 对象中您只会看到其中的几个(内容类型、上次修改时间、语言、过期、编译指示和缓存控制)

您可以尝试通过发送 Access-Control-Expose-Headers 将其添加到您的服务器响应中(如果您有权访问它),请查看here 了解更多详细信息。

【讨论】:

以上是关于JavaScript/jQuery:无法获得“WWW-Authenticate”响应标头的主要内容,如果未能解决你的问题,请参考以下文章

无法获得在 Propel2 中工作的外键

代码:1452。无法添加或更新子行:外键约束失败(`WW2`

如果无法使用 Javascript/jQuery 加载视频,则隐藏视频容器

图像编辑无法使用 PHP 和 Javascript/Jquery [关闭]

在 Javascript / jQuery 中无法检索 Django 模板变量值

我无法在 iOs 上使用任何 javascript (jQuery)