使用cURL和浏览器打开的* .JS文件的差异

时间:2010-08-23 09:05:06

标签: javascript curl

如果我在浏览器中打开此.JS文件(link text),我会在浏览器窗口中回复:

var PHONE_CNT=2;var PHONE_CNT2=0;var PHONE_CNT3=0;var EMAIL_CNT=2;var SHOW_CNT=1795;var PH_c="";var PH_1=0;var PH_2=0;var PH_3=0;
PH_1 = "JUQyJUFCJThDJUM5JThFJUQzJTgzeSVDMiVEQyVCQ2ElQkUlREQlQzglOUUlOTR6JUE2bSVCN3ElOUIlRTglQzQlQkYlODUlRDklQjIlQzglQjclQUE=";

如果我使用cURL或?php(file_get_contents)打开同一个文件,那么内容会有所不同:

var PHONE_CNT=0;var PHONE_CNT2=0;var PHONE_CNT3=0;var EMAIL_CNT=0;var SHOW_CNT=1;var PH_c="";var PH_1=0;var PH_2=0;var PH_3=0; 
PH_1 = "JUQyJUFCJThDJUM5JThGJUMyJTg0JTlBJUJBJUM3JUJEdSVDMCVDRCVDOCVFNSU4RiU3RiVBNiVBOSVCOCU4MyU5MCVEOA=="; 

差异为 PH_1 值。 我试图为cURL设置不同的选项,但没有任何帮助。任何想法如何使用cURL获取.JS文件内容与使用浏览器时获得的相同。

先谢谢你。

2 个答案:

答案 0 :(得分:2)

服务器必须根据某些请求参数生成不同的PH1值。您必须从两个请求中找出HTTP标头,以查看导致差异的原因,例如:设置http://www.fiddler2.com/fiddler2/等本地代理并通过该代理发出请求。

它可能是用户代理的一些组合,接受标题,cookie或您正在连接的IP或国家/地区的差异 - 不知道服务器逻辑是什么(或了解不同的PH1值意味着什么)我们不能真的帮助你抱歉。

答案 1 :(得分:0)

Curl只是从服务器获取数据,它不解释javascript 。如果你想从网页上解释javascript,你必须使用javascript引擎作为spidermonkey。