【发布时间】: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