Strapi 路由 return 404 未找到

Strapi routes return 404 Not found

我的 API return 404 Not found 中的所有路线都有问题。我遵循 从 Docker Hub 部分提取 strapi/strapi-docker.

除了 运行 图片之外,我所做的是创建一个名为 post 的新内容类型,其中包含三个字段。如果我尝试 GET /post(添加所有帖子),我会收到未经授权的响应错误。这是现阶段的预期。在我检查角色和权限以允许 Public 角色使用 find 和 findOne 路由后,我反而收到 404 Not found 响应错误,即使数据已添加。

开发服务器不使用任何前缀。

post find 和 findOne 的路由如下所示:

{
  "routes": [
    {
    "method": "GET",
    "path": "/post",
    "handler": "Post.find",
    "config": {
      "policies": []
    }
  },
  {
    "method": "GET",
    "path": "/post/:_id",
    "handler": "Post.findOne",
    "config": {
      "policies": []
    }
  }
}

fiddle 的 strapi 界面中没有太多选项,所以我不确定还能尝试什么。我已经尝试了几个其他的 strapi 安装。不确定这是否会把事情搞砸,但我依稀记得之前尝试过 strapi/strapi-docker 并让它开始工作。

我已经多次偶然发现这个问题,最简单的答案通常是:

你发表过任何帖子吗?

Strapi 有一个发布子系统,通常在创建任何 collection、单个类型或组件时打开。

因此,当您创建任何创建类型的任何内容时,数据将保存为草稿并且不公开。

这是我的 link collection 类型。已保存,但未发布。

因此,如果您正在尝试测试一个端点,但您只有一个数据条目并且设置为草稿,则不会显示任何数据。

没有数据!

如果是单一类型未发布

这将 return 一个 404!

发布,瞧...

这可能是 strapi 向您发送 404 或仅发送空数组的原因之一!