Windows Intranet上的HTTP身份验证可以从浏览器进行,而不是来自其他Web客户端

时间:2017-01-11 17:25:13

标签: windows authentication networking

我想编写一个抓取工具,从公司网站中提取只能从公司内部网访问的信息。 我可以从我的笔记本电脑上安装的任何浏览器访问该网站,但当我尝试从任何其他Web客户端(curl,nodejs请求,...)执行此操作时,我得到HTTP401。

我尝试使用与代理和基本身份验证相关的不同设置,但我找不到任何有效的解决方案。

由于我在Windows系统上并且我认为此处可能涉及IE网络设置,我还尝试从IE获取网络代理设置 netsh winhttp import proxy source =ie,但它没有任何区别。

我错过了什么?如何确定本地浏览器能够访问该网站而不是其他Web客户端的原因?我已经查看了Chrome开发者工具中的请求,但无法找到任何有助于此的内容。

1 个答案:

答案 0 :(得分:0)

终于找到了解决方案,我在卷曲中错过了--ntlm标志......

$ curl -s -o /dev/null -w "%{http_code}" -u "${USER}:${PASS}" ${URL} 401 $ curl --ntlm -s -o /dev/null -w "%{http_code}" -u "${USER}:${PASS}" ${URL} 200