天气预报(三)分析http://www.weather.com.cn/weather/xxxxxxxx.shtml,是否可以直接利用该网页的js.xhr返回我想要的

在天气文本框输入城市名时,检查发现js中出现http://toy1.weather.com.cn/search?cityname=beiji等字段,打开该链接后返回

success_jsonpCallback([{"ref":"101010100~beijing ,而其中的”101010100”正是各个城市所对应的代码,如直接访问http://www.weather.com.cn/weather/101010100.shtml即访问北京天气。

进一步观察js,发现其中http://d1.weather.com.cn/dingzhi/101010100.html所返回的数据正是我所需要的!!!

然而!403拒绝访问!!!!!!

但是既然之前可以在谷歌控制栏里面看到返回的数据,直接打开却出现问题,说明两者所发送的数据有所差异。

对比两者的headers,发现了问题所在:成功返回数据的referer数据如下

Referer:
http://www.weather.com.cn/weather/101010100.shtml 而新开的窗口却没有referer。于是尝试伪造referer,最终的结果却是失败。

不得已只得重新再来。

你可能感兴趣的:(前端)