Windows 使用wget并获得与使用浏览器不同的结果

Windows 使用wget并获得与使用浏览器不同的结果,windows,http,windows-8,httprequest,wget,Windows,Http,Windows 8,Httprequest,Wget,我正在windows 8中使用wget for windows(gnuwin32 wget-1.11.4-1),并将其用于名为kayako的帮助台工具,告诉它从电子邮件队列进行轮询。命令行如下所示: wget.exe -O null --timeout 25 http://xxx.kayako.com/cron/index.php?/Parser/ParserMinute/POP3IMAP 我知道在我使用上面命令行中带有url的浏览器时,从服务器接收响应大约需要20秒。但是,当使用该命令时,它

我正在windows 8中使用wget for windows(gnuwin32 wget-1.11.4-1),并将其用于名为kayako的帮助台工具,告诉它从电子邮件队列进行轮询。命令行如下所示:

wget.exe -O null --timeout 25 http://xxx.kayako.com/cron/index.php?/Parser/ParserMinute/POP3IMAP
我知道在我使用上面命令行中带有url的浏览器时,从服务器接收响应大约需要20秒。但是,当使用该命令时,它几乎立即返回。这是输出的摘录:

连接到xxx.kayako.com[xxx.xxx.xxx.xxx]:80。。。有联系的。超文本传输协议 已发送请求,正在等待响应。。。200正常长度:未指定 [文本/html]


我想知道这两种情况之间的区别,以及如何让wget以与计算机相同的方式运行(我知道不是这样,因为kayako没有从电子邮件队列进行轮询)。

有许多潜在的变量,但是web服务器的一个更常见的区别是基于您报告的用户代理字符串。默认情况下,wget将真实地标识自己为wget。如果这是一个问题,您可以使用
--user agent=
选项更改用户代理字符串


例如,您可以在64位Windows上使用类似于
--user-agent=“Mozilla/5.0(Windows NT 6.1;WOW64;rv:19.0)Gecko/20100101 Firefox/19.0”的内容识别为Firefox。有许多潜在变量,但web服务器的一个更常见的区别是基于您报告的用户代理字符串。默认情况下,wget将真实地标识自己为wget。如果这是一个问题,您可以使用
--user agent=
选项更改用户代理字符串


例如,您可以在64位Windows上使用类似于
--user agent=“Mozilla/5.0(Windows NT 6.1;WOW64;rv:19.0)Gecko/20100101 Firefox/19.0”的内容识别为Firefox谢谢,这是一个很好的猜测!不幸的是,我仍然几乎立即收到服务器的“200”响应(在浏览器上总是需要更长的时间),而且它不工作。如果不是这样,或者--referer=“”,那么我不知道还有什么要告诉yaThanks,这是非常好的猜测!不幸的是,我仍然几乎立即收到服务器的“200”响应(在浏览器上总是需要更长的时间),而且它不工作。如果不是这样,或者--referer=“”,那么我不知道还有什么可以告诉yaFire up WireShark,看看HTTP头的区别。@Luke谢谢你的好主意,如果我能解决这个问题,我会这样做,并用回复更新。请参阅WireShark,看看HTTP头中的区别。@Luke谢谢你的好主意,如果我能解决这个问题,我会这样做并用回复更新