我有一个Rails应用程序,其操作如下:
def some_action
headers['Access-Control-Allow-Origin'] = 'http://www.example.com'
headers['Access-Control-Request-Method'] = 'GET'
headers['Access-Control-Max-Age'] = '1728000'
n = Model.getNumber
render :json => {:count => n}
end
我在example.com上有一些关于该操作执行$.getJSON
的jQuery。奇怪的是,这种行为完全不可预测。每隔几秒运行一次GET请求,其中大约50%的请求失败,并且“Access-Control-Allow-Origin”消息不允许使用“Origin http://www.example.com”。
我真的希望它可以100%的时间工作,也可以100%的时间失败。为什么它会在多个请求之间表现不同,除了相同的浏览器之外几秒钟?
编辑:我正在缓存该行动......不确定这是否有所不同。
答案 0 :(得分:3)
这对我来说听起来像是一个缓存问题。如果您使用的是HTML缓存,则可能会删除标题,或者如果要缓存代码中的数据,请确保无论如何都添加标题。