Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.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
Http 如果凭证已可用,是否有办法强制浏览器始终通过授权标头?_Http_Cgi_Http Headers_Basic Authentication - Fatal编程技术网

Http 如果凭证已可用,是否有办法强制浏览器始终通过授权标头?

Http 如果凭证已可用,是否有办法强制浏览器始终通过授权标头?,http,cgi,http-headers,basic-authentication,Http,Cgi,Http Headers,Basic Authentication,使用基本身份验证时,如果用户已登录,则只有在收到包含身份验证质询的401响应时,浏览器才会在后续http请求的http请求中包含用户名/密码。用户名/密码通过授权标头传递 有没有办法在用户登录后强制浏览器始终包含授权标题 我要求这样做的原因是我有一个CGI应用程序(与为我的动态页面提供服务的主CGI应用程序不同),如果存在授权信息,它应该使用授权信息,但如果不存在,则不应该提示 谢谢 如果用户已登录,则 浏览器将包括 http请求中的用户名/密码 仅在后续http请求中 如果它收到401响应 包

使用基本身份验证时,如果用户已登录,则只有在收到包含身份验证质询的401响应时,浏览器才会在后续http请求的http请求中包含用户名/密码。用户名/密码通过授权标头传递

有没有办法在用户登录后强制浏览器始终包含授权标题

我要求这样做的原因是我有一个CGI应用程序(与为我的动态页面提供服务的主CGI应用程序不同),如果存在授权信息,它应该使用授权信息,但如果不存在,则不应该提示

谢谢

如果用户已登录,则 浏览器将包括 http请求中的用户名/密码 仅在后续http请求中 如果它收到401响应 包含身份验证质询


这不是我在网络浏览器中看到的行为;一旦浏览器收到401,它将始终包括该401之后的授权。您能否提供有关如何重现问题的更多详细信息?

一种解决方案是公开CGI应用程序的一个处理程序,该处理程序将生成一个HTML页面,该页面将执行AJAX调用,提示401,然后由浏览器响应。这有意义吗

这正是我想要的。浏览器必须先收到401响应,然后才能提供授权标头。我想知道一种方法,即使浏览器没有收到401响应,也要包含授权头。我明白了。这是一个有点棘手的问题。你能告诉我们发生这种情况会解决什么问题,也许我们可以从另一个方向攻击它吗?只需将上面的页面包含到我们的web应用程序中,而无需浏览器向用户询问用户名/密码实际上我不需要最终用户查看pupup消息(甚至任何身份验证)要求,因为此密码适用于我们公司,而不是最终用户