- 主题:请教一个HttpRequest方面的问题
新浪微博中填写个人信息的地方提供了学校列表,学校列表是通过一个XHR的httprequest返回的json得到的。
我试图用程序模拟httprequest来获取httpresponse,然后解析json获取学校列表。但是不管我用java还是python写程序,得到的response总是“系统繁忙,请稍后再试(103)”。
我怀疑是新浪检测出了我的httprequest和浏览器发出的有所不同。但我设的httprequest的参数及header等完全模拟浏览器请求。
后来我发现用curl就可以得到正确结果。
求高人指点。多谢!
--
修改:iwanttobexo FROM 202.108.14.*
FROM 202.108.14.*
发的数据还是不一致的呗,用wireshark抓包比较一下就知道了
【 在 iwanttobexo (xo) 的大作中提到: 】
: 新浪微博中填写个人信息的地方提供了学校列表,学校列表是通过一个XHR的httprequest返回的json得到的。
: 我试图用程序模拟httprequest来获取httpresponse,然后解析json获取学校列表。但是不管我用java还是python写程序,得到的response总是“系统繁忙,请稍后再试(103)”。
: 我怀疑是新浪检测出了我的httprequest和浏览器发出的有所不同。但我设的httprequest的参数及header等完全模拟浏览器请求。
: ...................
--
FROM 115.171.45.*
我可能知道为什么了。
程序发的http请求中虽然设置了Connection:keep-alive,但fiddler截获的请求中显示Connection:close.
我估计就差在这点上。
【 在 marsteel (K ) 的大作中提到: 】
: 发的数据还是不一致的呗,用wireshark抓包比较一下就知道了
--
FROM 202.108.14.*
奇怪的是我明明设置Connection:keep-alive,为啥截获请求还是Connection:close呢?
【 在 iwanttobexo (xo) 的大作中提到: 】
: 我可能知道为什么了。
: 程序发的http请求中虽然设置了Connection:keep-alive,但fiddler截获的请求中显示Connection:close.
: 我估计就差在这点上。
--
FROM 202.108.14.*
检查一下你的请求携带的 cookie?
【 在 iwanttobexo (xo) 的大作中提到: 】
: 新浪微博中填写个人信息的地方提供了学校列表,学校列表是通过一个XHR的httprequest返回的json得到的。
: 我试图用程序模拟httprequest来获取httpresponse,然后解析json获取学校列表。但是不管我用java还是python写程序,得到的response总是“系统繁忙,请稍后再试(103)”。
: 我怀疑是新浪检测出了我的httprequest和浏览器发出的有所不同。但我设的httprequest的参数及header等完全模拟浏览器请求。
: ...................
--
FROM 210.74.155.*
谢谢,java写的OK了,python写的还那样,不管他了,算是解决了。
【 在 wuyou (乌有者,无有也) 的大作中提到: 】
: 检查一下你的请求携带的 cookie?
--
FROM 202.108.14.*
cookie
【 在 iwanttobexo (xo) 的大作中提到: 】
: 新浪微博中填写个人信息的地方提供了学校列表,学校列表是通过一个XHR的
httprequest返回的json得到的。
: 我试图用程序模拟httprequest来获取httpresponse,然后解析json获取学校列表。但是不
管我用java还是python写程序,得到的response总是“系统繁忙,请稍后再试(103)”。
: 我怀疑是新浪检测出了我的httprequest和浏览器发出的有所不同。但我设的httprequest
的参数及header等完全模拟浏览器请求。
: ...................
--
FROM 221.222.150.*