【问题标题】:React get Laravel Auth UserReact 获取 Laravel 身份验证用户
【发布时间】:2019-02-24 07:33:32
【问题描述】:

我刚刚通过 Laravel 进行了 Auth 系统,我遇到了一个问题:如何签入 ReactJS 登录用户?我需要获取他的 ID 以检查此用户是否可以修改页面。我完全不知道该去哪里。

欢迎任何提示!

【问题讨论】:

  • 您实际上不需要这样做。只需发出请求(使用来自 Laravel's built-in API authentication system 的 API 令牌并让 Laravel 进行检查(使用 Laravel's authorization system)。如果检查失败,React 将收到 403 Unauthorized 错误并采取相应措施。
  • 但是如果我正在做一些其他的事情,比如与 ReactJS 无关的配置文件修改呢?

标签: reactjs laravel authentication


【解决方案1】:

您不能对 react 应用使用默认身份验证(使用会话)。

您需要的是一个创建身份验证令牌(搜索 JWT 或 Laravel 护照)来识别用户的系统,并且由于 HTTP 协议是无状态的,因此在每个请求中,您必须将该令牌发送到你后端服务/API。

您当然可以为您的全局状态添加一个表示身份验证的值(如果您有一个有效的令牌,则为 true),仅用于 UI 或路由目的。

查看medium article,作者解释了如何使用 JWT 使用 laravel 创建基于令牌的身份验证。

您还可以搜索有关 REST 和 oauth 的更多信息。

【讨论】:

  • 事实上,我的应用程序可以用于只有 React 部分(占整个应用程序的 50%)的其他事情,我不知道如何使用身份验证令牌来管理它,因为我'不打算使用会话
  • 我已经通过添加指向一篇好的媒体文章的链接来编辑我的答案。
  • 感谢您的链接。这在我的脑海中仍然有点混乱:这是否意味着我只能通过 React 登录?
  • 你是说你的应用是一半 HTML,一半反应对吗?
  • 您应该在所有应用程序中使用基于令牌的身份验证,当您“获取 HTML 文件”时,我会尝试为您提供一些有关如何执行此操作的链接。编辑:实际上您也可以返回 html文件直接使用 api 路由,就像 web 路由一样。laravel.com/docs/5.7/responses#view-responses
猜你喜欢
  • 2022-01-02
  • 1970-01-01
  • 2020-01-29
  • 2016-02-02
  • 2018-11-26
  • 1970-01-01
  • 2018-05-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多