在最近的一个sharepoint项目中,我实现了一个身份验证webpart,它应该取代NTLM身份验证对话框.只要用户提供有效的凭据,它就可以正常工作.每当用户提供无效凭据时,Internet Explorer中都会弹出NTLM对话框.
我通过XmlHttpRequest进行身份验证的Javascript代码如下所示:
function Login() { var request = GetRequest(); // retrieves XmlHttpRequest request.onreadystatechange = function() { if (this.status == 401) { // unauthorized request -> invalid credentials // do something to suppress NTLM dialog box... // already tried location.reload(); and window.location =; } } request.open("GET", "http://myServer", false, "domain\\username", "password"); request.send(null); }
我不希望在用户提供无效凭据时显示NTLM对话框.相反,应该执行身份验证表单中的登录按钮的回发.换句话说,浏览器不应该发现我未经授权的请求.
有没有办法通过Javascript来做到这一点?