我正在尝试使用CFHTTP获取以下URL但我没有收到该页面。有什么想法吗?
http://www.google.com/flights/#search;f=JNB;t=MRU;d=2016-12-19;sel=JNBMRU0MK854;s=0
<cfhttp url="https://www.google.com/flights/##search;f=JNB;t=MRU;d=2016-12-19;sel=JNBMRU0MK852;s=0" method="GET" resolveurl="true" useragent="Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.87 Safari/537.36">
<cfhttpparam type="header" name="HTTP_REFERER" value="http://example.com/feed/" >
<cfhttpparam type="header" name="Accept-Encoding" value="gzip,deflate,sdch" >
<cfhttpparam type="header" name="Proxy-Connection" value="keep-alive" >
<cfhttpparam type="header" name="Accept" value="application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5">
<cfhttpparam type="header" name="Accept-Language" value="en-US,en;q=0.8">
<cfhttpparam type="header" name="Accept-Charset" value="ISO-8859-1,utf-8;q=0.7,*;q=0.3">
<cfhttpparam type="cookie" name="some-cookie" value="1">
</cfhttp>
<cfoutput>#cfhttp.filecontent#</cfoutput>
答案 0 :(得分:1)
使用http
代替https
为我工作。
如果要测试它,请使用@bkbk建议的方法。
<cfdump var="#cfhttp.filecontent#">
但请注意,输出filecontent
将无法与原始网站类似。这是因为该站点使用了一些安全标头,如
x-content-type-options:nosniff
x-frame-options:SAMEORIGIN
x-xss-protection:1; mode=block
这将不允许加载一些原始网站脚本和css。
答案 1 :(得分:0)
响应很可能是以HTML形式出现的,但您的浏览器并未显示标记。要显示您可以看到的结果,请使用
<cfoutput>#xmlformat(cfhttp.filecontent)#</cfoutput>
或
<cfdump var="#cfhttp#">
顺便说一句,如何运行
<cfhttp url="https://www.google.com/flights/##search;f=JNB;t=MRU;d=2016-12-19;sel=JNBMRU0MK852;s=0" method="GET" resolveurl="true" useragent="Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.87 Safari/537.36" />