我们是否可以导航(通过<a/>
点击)到请求中包含额外标题的网址?这是我的代码:
我有一个<a href="#" id="aUsers"/>
标记,然后我通过JQuery处理onClick()
事件:
$('#aUsers').click(function () {
var spAuthData = sessionStorage.getItem('sp-auth-data');
window.location.href = '/users.html?sp-auth-data' = spAuthData;
});
我想将spAuthData
值放在authorization
标题中,这样我就可以拥有一个干净的网址
答案 0 :(得分:1)
据我所知,没有办法用普通网址操纵HTTP标头。
如果适合您的情况,您可以使用jQuery AJAX请求的headers
参数。例如,您可以使用AJAX HTML响应更新某些div
的内容。
$.ajax({
url: '/users.html',
headers: { 'Authorization': spAuthData }
}).done(function()
{
});
否则,您似乎需要进行一些服务器端更改。
但为什么不使用cookies或类似的东西呢?
Authorization
仅在授权期间由未经授权的用户使用。在我看来,手动发送每个来自浏览器的请求的标题听起来很糟糕。最好的方法是在授权期间发送一次此标头,创建用户会话并将其存储在cookie中(作为访问令牌,表单票证或其他任何内容)。