gpt4 book ai didi

ruby-on-rails - Rails API 身份验证无需登录

转载 作者:行者123 更新时间:2023-12-02 04:33:49 25 4
gpt4 key购买 nike

我有一个网站,其中有通用项目列表。我通过 axios 向我的 Rails API 发出请求,在前端获取这些列表。 (我正在 Redux 操作中获取)

我正在使用 Active Model Serializer,因此只需访问 url“http://localhost:3000/items”即可收集数据的 JSON 格式(JSON 自动设置为通过我的 Controller 呈现)

我想限制对 API 的访问,但仍然在我的网站上向所有用户显示这些项目列表,无论他们是否登录。

有没有一种方法可以在不需要登录的情况下保护这些数据,同时仍然在前端获取数据?

最佳答案

您可以使用身份验证 token (在 Rails 中使用 before_action)保护 API,并在向 API 发送请求时将此 token 包含在前端代码中。

axios示例

axios({
method: 'get',
url: '/items',
headers: { 'Authorization': '<insert token here>' }
});

这意味着用户现在必须读取您的前端代码来查找 token 才能直接访问 API,这在一定程度上保护您的 API,特别是在您的前端代码被缩小的情况下。

关于ruby-on-rails - Rails API 身份验证无需登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49699741/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com