docker 404 Not Found Not Found

eh57zj3b  于 2023-05-22  发布在  Docker
关注(0)|答案(3)|浏览(201)

我的API中的所有路由都返回404 Not found。我在strapi/strapi-docker上查看了Pull from Docker Hub部分。
除了运行图像之外,我还创建了一个名为post的新Content类型,其中包含三个字段。如果我尝试GET /post(以获得所有的帖子添加)我得到未经授权的响应错误.这在现阶段是预料之中的。在我检查Roles & Permissions以允许Public角色使用find和findOne路由之后,我得到了一个404 Not found响应错误,即使已经添加了数据。
dev服务器不使用任何前缀。
find和findOne的post路由如下:

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

在strapi接口中没有太多的选项可以摆弄,所以我不确定还能尝试什么。我已经尝试了其他几个安装的strapi。不知道这是否会把它搞砸,但我依稀记得以前尝试过strapi/strapi-docker,并让它工作。

9vw9lbht

9vw9lbht1#

我经常遇到这个问题,最简单的答案通常是:
你发表过你的文章吗?
Strapi有一个发布子系统,通常在创建任何集合、单个类型或组件时打开。

因此,当您创建任何已创建类型的任何内容时,数据将保存为草稿,并且不可公开使用。
这是我的链接集合类型。已保存,但未发布。

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

没有数据!

如果是未发布的单个类型

这将返回一个404!

出版,瞧…

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

ac1kyiln

ac1kyiln2#

这个问题我也遇到过很多次,即使是出版的内容。
另外两个原因可能是:
1.如果你的内容类型是posts,尝试/posts和/API/posts(第二个通常对我有用
1.在设置>角色(USERS & PERMISSIONS插件下的角色)下,确保AuthenticatedPublic两个用户角色都有findfindOne对内容类型的访问权限。
有一次我得到了404,即使我这样做是为了公共......但因为我在同一个浏览器作为我的登录管理员,并需要更新它为认证以及。

tvmytwxo

tvmytwxo3#

唯一的原因是发布按钮,有时它不工作,如果你有一个复杂的组件,其中一个部分错误,但屏幕不滚动到它,因此发布按钮似乎什么也不做,日志只显示一个获取请求,你开始拉你的头发。
好吧,不要,总是检查页面发布时的任何错误,即缺少必填字段等,使发布按钮的工作。

相关问题