2012-09-06 26 views
4

我很难过!刮耙似乎遭受不必要缓存的耙子任务

我有一个rake任务,每分钟运行一次。

它已登录,它发现我感兴趣的JSON,但可能会在Rake任务中发现JSON的任何更改之前花费多达30次任务。在此期间,我错过了某些JSON对象的一些更改。

好像有一些缓存正在进行,我试图关闭机械化缓存如图所示,只是不知道我现在可以尝试什么。

任何指针?

在此先感谢。从服务器

agent = Mechanize.new # {|a| a.log = Logger.new(STDERR) } 
    agent.history.clear 
    agent.max_history = 0 
    agent.user_agent_alias = 'Mac Safari' 
    page = agent.get 'http://website.com' 
    form = page.forms.first 
    form.email = '[email protected]' 
    form.password = 'mypassword' 

    page = agent.submit form 
    page = agent.get 'http://website.com/password_protected_page' 
    jsonDirty = page.search '//script[@type="application/json"]' 

响应:

{"server"=>"nginx", "date"=>"Thu, 13 Sep 2012 14:16:43 GMT", "content-type"=>"text/html; charset=utf-8", "connection"=>"close", "vary"=>"Cookie", "content-language"=>"plfplen", "set-cookie"=>"csrftoken=pVDg2SJ4KHqONz2OiEkNK7IbKlnJSQQf; expires=Thu, 12-Sep-2013 14:16:43 GMT; Max-Age=31449600; Path=/, affiliate=; expires=Thu, 01-Jan-1970 00:00:00 GMT; Max-Age=0; Path=/, one-click-join=; expires=Thu,01-Jan-1970 00:00:00 GMT; Max-Age=0; Path=/", "expires"=>"Thu, 01 Jan 1970 00:00:01 GMT", "cache-control"=>"no-cache", "content-encoding"=>"gzip", "transfer-encoding"=>"chunked"} 
+0

您是否有权限访问服务器日志?如果没有,您是否可以将服务器响应头输出到日志中? – brycemcd

+0

感谢布莱斯,我已经添加了来自服务器的响应.. – iOSDevil

+0

您是否验证过结果真的更频繁?您可以尝试使用'curl'提交表单并比较javascript。 – Roman

回答

1

你可以试着在后面加上一个随机的查询参数的URL。如:

page = agent.get "http://website.com/password_protected_page?random=#{Time.now.to_i}" 
+0

谢谢克里斯蒂安,会给你一个去,让你知道 – iOSDevil

+0

关于它如何去的任何消息? – FluffyJack

+0

不幸的是,它没有区别,仍然是一样长的延迟 – iOSDevil