【问题标题】:JQuery Autocomplete - Http Basic AuthenticationJQuery 自动完成 - Http 基本身份验证
【发布时间】:2012-10-31 01:57:06
【问题描述】:

在进行.autocomplete 调用时,传递浏览器当前存储在会话 cookie 中的 BASIC 身份验证凭据的最简单方法是什么?我知道我可以使用带有用户名和密码的 ajax 方法,但我不知道如何从浏览器中检索所述信息。

基本上,用户使用 apache 的 htpswd/htaccess 功能登录,我知道浏览器必须将信息存储在 cookie 中。我的问题是如何检索要在 AJAX 调用中使用的所述信息,使其不返回 410 响应?

我当前的代码:

$( ".item" ).autocomplete({
                        source: function(request, response){$.get("https://www.mydomain.com/blah/bling/blat/", 
                        function(data){response(JSON.parse(data));});},
                        minLength: 2
                    });

【问题讨论】:

  • 它没有存储在 cookie 中。我不认为 JavaScript 可以直接访问它。但我认为没有必要。如果需要凭据,浏览器将自动发送它们,并在必要时提示用户。见here
  • 您当前的代码有语法错误 - 缺少一个 "。不过已为您修复。
  • 经过进一步思考,@barmar 是 100% 正确的。您不需要在每个请求中都传递您的信誉,但如果您需要使用 JS 登录(即自定义 http auth 登录表单),请随时查看我的答案。
  • @Barmar 看来你是对的。我不知道为什么我昨天遇到了这个问题,但是今天再试一次,它工作正常。如果你写一个答案,我会接受它。

标签: javascript jquery authentication cookies


【解决方案1】:

身份验证凭据不存储在 cookie 中。我不认为 JavaScript 可以直接访问它。但我认为没有必要。如果需要凭据,浏览器将自动发送它们,并在必要时提示用户。有关更多详细信息,请参阅here

【讨论】:

  • 感谢您的健全性检查。我不知道为什么我最初尝试时不是这样。
猜你喜欢
  • 1970-01-01
  • 2021-03-21
  • 2011-11-12
  • 2011-05-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-11
  • 2013-09-01
相关资源
最近更新 更多