有没有一种方法可以确定浏览器是否支持NTLM,而不需要在IIS中为特定站点或目录启用NTLM,也不需要显示登录对话框/弹出窗口?最好使用ColdFusion或可能是JS和CF的组合来确定。我希望不仅限于IE,因为其他浏览器(如FF)也支持NTLM身份验证。
有没有一种方法可以确定浏览器是否支持NTLM,而不需要在IIS中为特定站点或目录启用NTLM,也不需要显示登录对话框/弹出窗口?最好使用ColdFusion或可能是JS和CF的组合来确定。我希望不仅限于IE,因为其他浏览器(如FF)也支持NTLM身份验证。
在Lou的回答基础上,您可以在try/catch块中进行cfhttp请求。然后检查响应头以确定接下来的步骤。
不幸的是,您可能被迫使用浏览器嗅探和白名单。
提示登录对话框
/发送另一个HTTP数据包
。如果我使用JavaScript/XMLHTTPRequest或其他方式发出请求并收到带有NTML头的401响应,由于请求是由我的客户端代码发出的,处理响应的也将是我的客户端代码,因此浏览器不会再次发送HTTP数据包并尝试响应它。 - King Chan