Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/324.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 在请求头中设置基本授权详细信息_Javascript_Java - Fatal编程技术网

Javascript 在请求头中设置基本授权详细信息

Javascript 在请求头中设置基本授权详细信息,javascript,java,Javascript,Java,在我们的应用程序中,我们验证用户名/密码。验证完成后,将使用base64对凭据进行编码,然后需要在请求头处为后续rest调用设置凭据 需要在下面的请求头中设置 Authorization:Basic AQNLzR69OFTNJE8X 在java代码的如下响应设置中 javax.ws.rs.core.Response.status(200).entity("").header("Authorization:","Basic AQNLzR69OFTNJE8X").build(); 在下面的jav

在我们的应用程序中,我们验证用户名/密码。验证完成后,将使用base64对凭据进行编码,然后需要在请求头处为后续rest调用设置凭据

需要在下面的请求头中设置

Authorization:Basic AQNLzR69OFTNJE8X
在java代码的如下响应设置中

javax.ws.rs.core.Response.status(200).entity("").header("Authorization:","Basic AQNLzR69OFTNJE8X").build();
在下面的javascript设置中

sessionStorage.setItem('Authorization:', 'Basic AQNLzR69OFTNJE8X');

但在同一会话中的后续rest服务调用中可以看到头请求未设置授权。请求提供一些关于在javascript中设置授权的指针,以便在整个会话中保留授权。

我认为您误解了身份验证的工作原理(或应该工作)。 在身份验证期间,您应该只发送一次
授权
头。如果身份验证成功,服务器将向您发回会话cookie,并且您的会话将标记为已验证(服务器端)。 您永远不会发回标题的内容,也不必每次请求都发送它

1)
授权
标题不会自动添加。但是cookie将自动发送

2) 您不应该发送凭证并返回凭证:出于安全目的,您希望尽可能少地传输凭证

3) 您不想将凭证存储在会话存储中,我不知道这是否是密码的安全位置(我对此表示怀疑),但在这里,密码仅用B64编码,并且是可逆的。所以它和明文一样(对于密码来说是不好的)


希望这有帮助

您正在尝试进行身份验证或授权吗?我觉得您在这里混合了这两者。标题的正确名称是
Authorization
。它不应该包含冒号(
)。感谢您的输入。我已从服务器验证了凭据。你能澄清以下几点吗。如何从服务器发回会话cookie。2.cookie将如何自动发送。任何指向现有材料或代码的指针都会有所帮助。1)服务器使用
Set cookie
头将cookie发送回客户端。根据您的服务器,这可以自动完成。如果您自己执行身份验证,只需确保在用户会话中保存他是谁(他的
主体
)2),这是任何web浏览器的基础。如果请求与域和请求路径匹配,则会自动向每个请求发送您拥有的任何cookie。