Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/422.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
Javascript 检查站点是否通过AJAX使用基本身份验证_Javascript_Ajax_Basic Authentication - Fatal编程技术网

Javascript 检查站点是否通过AJAX使用基本身份验证

Javascript 检查站点是否通过AJAX使用基本身份验证,javascript,ajax,basic-authentication,Javascript,Ajax,Basic Authentication,如果网站使用基本授权,有没有一种方法可以通过AJAX进行检查,而不让浏览器显示登录对话框 我现在的电话是: $.ajax type: 'HEAD' url: url success: (data) -> console.log 'jep' error: (jqXHR, textStatus, errorThrown) -> console.log 'nope' 如果站点使用授权,将始终显示登录对话框。但是,我只想知

如果网站使用基本授权,有没有一种方法可以通过AJAX进行检查,而不让浏览器显示登录对话框

我现在的电话是:

$.ajax
    type: 'HEAD'
    url: url
    success: (data) ->
         console.log 'jep'
    error: (jqXHR, textStatus, errorThrown) ->
         console.log 'nope'

如果站点使用授权,将始终显示登录对话框。但是,我只想知道该网站是否受到基本授权的保护。我找不到这样做的方法。我知道解决方案,但无法编辑服务器响应。

检查标题。如果你看到这样的情况:

WWW-Authenticate: Basic realm="protected-area"

…那么您就知道它使用基本身份验证。因此,请检查是否存在上述标题。

您尝试了什么?401响应可能会触发
错误
处理程序。可能您可以尝试记录更多信息,而不是在对话框显示后触发“nope”
Success
error
。发送错误的用户名和密码无效,并且在对话框显示后还会触发401 statusCode触发器。