首页 > 解决方案 > Strapi 中基于 Cookie 的身份验证

问题描述

我想创建什么我想
保护一个网页。我不希望有人在他们登录之前查看它。

说,我想确保路线

本地主机:1337/店

我知道 Strapi 为 API 提供身份验证选项,并且我能够保护路由。

因此,直到localhost:1337/shop的 GET 请求在其标头中包含Autherization: Bearer 'Token',它才会显示 403 错误(这绝对是正确的)。

问题

如果我直接向 localhost:1337/shop 发出 GET 请求(直接意味着只需在浏览器的地址栏中输入),我无法设置标题,因此 403 禁止错误出现在那里。

我尝试过的解决方案

我将localhost:1337/shop设为公共 api(从身份验证中删除 find)。

我已将 jwtToken 存储到 cookie 中,我可以在服务器上获取它,但是当我在服务器上使用下面的代码时,它会抛出一个错误提示。

错误:找不到模型用户

 strapi.query('user').find({ id: 1 }).then((result)=>{
 console.log(result)
}

我没有在上面的代码中使用 cookie,但问题是一样的。

我知道我在理解 strapi 的概念方面肯定是错误的。

有没有更好的方法来处理Cookies 和身份验证是 Strapi

标签: node.jsauthenticationjwtstrapi

解决方案


推荐阅读