我遵循了堆栈溢出链接中提供的解决方案,当我从浏览器中使用它时,它运行良好。但是,当我尝试使用 curl 访问该 url 时,它不会为浏览器缓存..
让我解释。
如果我
example.org/results?limit=7
从我的 chrome 中点击一个 url,它需要8-10 seconds
加载并且连续点击需要时间milliseconds
所以我所做的就是URL
用curl
命令调用它;但它没有使用缓存的数据并再次创建了缓存。
所以我发现问题出arg
在下面代码中的参数上,因为它包含对象中的浏览器标头,该WSGIRequest
对象用于缓存键,因为它还包含我不需要缓存的标头。这没有达到我的 curl 请求自动创建缓存的目的celery task
。
@method_decorator(cache_page(60 * 60 * 24))
def dispatch(self, *arg, **kwargs):
print(arg)
print(kwargs)
return super(ProfileLikeHistoryApi, self).dispatch(*arg, **kwargs)
我能做的就是只传递kwargs
创建缓存或任何其他替代方法,我可以通过这些替代方法只缓存 url 而不是标题
我在这里先向您的帮助表示感谢。