我只是想在PHP中找到一种方法(链接,按钮等),让用户有可能打开一个(基于http身份验证)密码保护的页面。
我已经尝试了一个简单的href包含链接到:
http://username:password@domain
,但它似乎不再工作在当前的浏览器。
有办法做到这一点吗?这似乎是一个微不足道的问题,但实际上我还没有找到解决办法。
谢谢。
正如您所说,username:password
方案不能在所有浏览器中工作。您可以做的—如果您不介意基于脚本的解决方案—是首先通过AJAX建立身份验证,然后向用户提供一个普通链接。
想法概述:
- 客户端脚本通过AJAX建立身份验证。
- 操作成功后,向用户显示相应的链接。
- 一旦用户遵循链接,用户的客户端自动提交在步骤1中生成的凭据。
不知道为什么不行。现代浏览器试图避免的可能的安全问题。
但是为了完成这个,你可以使用
<script>
function foo(){
window.location = "http://username:password@domain";
}
</script>
<a onclick='foo()'>Click here</a>