显示缓存集合的猫鼬响应

时间:2016-11-11 21:27:30

标签: node.js mongodb express mongoose

我正在运行一个Express应用程序,Mongoose与Mongo数据库进行通信。我有一个简单的页面CMS来更新值。在我的登台环境中,当我更新页面时,我可以看到更新反映在我的Mongo控制台中,所以我知道更改是持久保存到数据库。但是,当我调用我的API时,我看到了一个缓存的响应。如果我重新启动Node,我将看到正确的更新值。

奇怪的是,我有其他Mongoose模型似乎更新。这在我的本地开发环境中也不会发生。调试此操作的后续步骤非常有用,因为我无法找到问题所在。我只能假设我的暂存环境Mongo DB对这个单独的集合有一些缓存而不是其余的,这是否可能?

这是我的模型架构:

import mongoose, { Schema } from 'mongoose';

const HomePage = new Schema({
  marquee: {
    image: String,
    label: String,
    headline: String,
    copy: String,
    linkUrl: String,
    linkText: String,
    videoText: String,
    videoUrl: String
  },
  updatedAt: {
    type: Date,
    default: Date.now
  },
  createdAt: {
    type: Date
  }
}, {
  collection: 'homepage'
});

export default mongoose.model('HomePage', HomePage);

此外,在我的API响应标头中,我将缓存设置为:Cache-Control:max-age=0

1 个答案:

答案 0 :(得分:0)

我将其缩小到缓存响应的浏览器,这很奇怪,因为我在同一平台上构建了其他应用程序而没有问题。要解决此问题,我只需在我的网址路径中添加?即可。所以我的最终获取请求现在如下:http://myapp.com/api/homepage?