如果你去http://wttr.in/ http://wttr.in/在浏览器中,您将看到一个包含在标签中、具有链接并使用跨度着色的页面。
如果您然后转到终端并输入curl http://wttr.in/
您将得到几乎完全相同的页面,但代码却截然不同。
wttr.in 如何区分这两者?
我知道这个现有问题(如何区分curl请求与浏览器请求 https://stackoverflow.com/questions/26558888/how-can-i-tell-a-curl-request-vs-browser-request),但由于答案是“你不能”,而我看到了你可以的证据,这似乎是一个糟糕的参考。
而且,我也不担心欺骗。
找到了。默认卷曲的标头包含
标题:
{ 主机:'本地主机:3000',
'用户代理': 'curl/7.54.0',
接受: '/' },
虽然我的浏览器的标题如下所示:
标题:
{ 主机:'本地主机:3000',
'用户代理': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:62.0) Gecko/20100101 Firefox/62.0',
接受:'text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8',
'接受语言': 'en-US,en;q=0.5',
'接受编码': 'gzip, deflate',
连接:“保持活动”,
'升级不安全请求':'1',
'缓存控制': '最大年龄=0' },
两者之间的最大区别是“用户代理”参数
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)