gpt4 book ai didi

REST api - 客户端应如何向其用户资源的请求 URL 提供用户 ID?

转载 作者:行者123 更新时间:2023-12-05 07:49:41 24 4
gpt4 key购买 nike

客户端第一次需要使用用户名/密码登录。为将来的请求返回一个 JWT token 。 token 将有一个用户标识,以便服务器可以从数据库中获取用户的资源。

我遇到的问题是客户端需要形成请求 URL 来更新其资源,比方说 POST/users/{userid}。我应该如何获取客户端的用户标识?我无法访问存储在 httpOnly 安全 cookie 中的 JWT token 。我应该以某种方式将用户标识存储在客户端上吗?以便它可以将其用于 URL?

最佳答案

我现在明白你的问题了。你害怕失去 RESTFUL api 的一些优势,一个独特的资源定位器,

我经常有一组 URI,这些 URI 以指示操作是针对当前经过身份验证的用户的路径开头。

/current/profile
/current/blog_posts

在这种情况下,我将用户从服务器上的请求上下文中拉出来,我可以通过解析 JWT token 来获得它。

当我想对其他用户进行操作时,我会改用标识符

/{{user_id}}/profile
/{{user_id}}/blog_posts

我不确定这是否是严格的 RESTFUL,但它确实为我的 API 用户提供了一个稳定且可发现的 URI。我已经在许多项目和团队中使用了这种模式,没有任何提示。

如果你真的必须得到一个用户标识符,我会想到两个想法:

  • 返回 user_id 和 jwt token 。
  • 进行额外的 API 调用从服务器获取 user_id,然后将其用于所有随后的电话。

哦,我想到了另一个选择。更改您对 user_id 的概念并改用用户名(您已经拥有)。

关于REST api - 客户端应如何向其用户资源的请求 URL 提供用户 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37054048/

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