我正在为Google App Engine上的应用程序开发后端系统。

我的应用程序和后端服务器与json通信。像http://server.example.com/api/check_status/3838373.json或仅http://server.example.com/api/check_status/3838373/

我计划使用CloudFlare缓存JSON页面。

我应该在标题上使用哪一个? :

Content-type: application/json
Content-type: text/html

CloudFlare是否缓存服务器的响应以降低成本?因为我不会使用CSS,图片等。

最佳答案

标准Cloudflare缓存级别(在您域的“性能设置”下)设置为“标准/积极”,这意味着默认情况下它仅缓存某些类型scripts, stylesheets, images。积极的缓存不会缓存普通网页(例如,在目录位置或* .html),也不会缓存JSON。所有这些都是基于URL模式(例如,它以.jpg结尾吗),而与Content-Type header 无关。

只能使全局设置的攻击性降低,而不能使其更具侵略性,因此,您需要使用“缓存所有内容”作为自定义缓存规则来设置一个或多个“页面规则”以匹配这些URL。

http://blog.cloudflare.com/introducing-pagerules-advanced-caching

顺便说一句,我不建议对JSON响应使用HTML Content-Type。

09-17 05:41