解决使用curl设置好COOKIEJAR文件时cookie无法保存的问题

今天使用curl来进行模拟登陆,在进行关于cookie的操作时,设置好了cookie

却发现无论如何都无法保存服务器返回的cookie

阅读更多

jQuery的getJSON方法post数据时自动添加的下划线字段

这两天在研究模拟登陆网盘。其中遇到一个问题,需要模拟发送一个POST,但是检测HTTP数据通信发现在发送时,经过POST发送的字段总是比form内的字段多一个下划线字段。一开始百思不得其解,后来经过仔细观察,发现这个字段的数值是一个数值,隐约感觉非常像json的时间字段,精确到毫秒的ticks。经过转换发现确实是标示发送时间的字段。

下划线字段的含义解决了,那它究竟是谁添加的呢?

在阅读发送这段内容的源代码后发现,这段代码是由jQuery的getJSON方法发送的,而且在发送前,已经使用ajaxSetup方法配置成异步、不缓存。阅读了jQuery的Refference后,发现默认就是异步,但是缓存为true。所以料想添加的下划线字段应该是用精确到毫秒的时间字段来将url标识为独一无二的请求,从而强制服务器发送最新的数据。

至此下划线问题完美解决:它是jQuery的ajax方法在设置为不缓存时自动添加的时间字段。