Laravel Rest API Google Auth at Angular

joy*_*nks 5 api rest google-authentication laravel angular

身份验证服务器 Api 是问题

我正在尝试在 2 个不同的服务器中在 laravel 和 Angular App 中创建一个 API。我没有得到一篇可以逐步解释我的好文章。

我面临的问题是我不确定如何处理 client_secret 我确定我需要在我的 Angular 应用程序上进行身份验证和登录时验证这一点(在服务器 laravel 上验证)

我是使用重定向 url 将其设置为 laravel 路由(因为谷歌在成功登录时使用访问令牌重定向从 angular 到我指向的任何 url)还是在我将其置于 angular 范围后从 angular 进行调用即使用rest调用将id令牌发送到laravel路由

我正在制作 laravel api,因为将来我可能有一个移动应用程序,我可以重用这个 api

我知道我可能进错了论坛。但这是我所知道的反应最快的论坛。

hen*_*ngs 5

您可以使用JWT进行身份验证SPA。

好的,步骤:

1. 创建身份验证端点

您需要提供一个端点来登录。比方说,/api/v1/login。这个端点,你应该像我提到的那样实现 JWT。所以这个端点应该像这样请求:

HTTP 方法:POST

标题

{'Content-Type': 'application/json'}
Run Code Online (Sandbox Code Playgroud)

身体

{'email': email, 'password': password}
Run Code Online (Sandbox Code Playgroud)

并返回一个令牌:

eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.XbPfbIHMI6arZ3Y922BhjWgQzWXcXNrz0ogtVhfEd2o
Run Code Online (Sandbox Code Playgroud)

这个令牌你应该保存在生命周期应用程序中,或者最好放在本地存储 js 中。出于安全原因,您必须设置过期的令牌。

2. 使用代币

不,您有令牌,此令牌用于授权用户请求安全 api。假设,用户想要获取他的个人资料/api/v1/users/1。因为这个 api 是安全的,所以你需要传递令牌。

HTTP 方法:获取

标题

{
   'Content-Type': 'application/json',
   'Authorization': "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.XbPfbIHMI6arZ3Y922BhjWgQzWXcXNrz0ogtVhfEd2o"
}
Run Code Online (Sandbox Code Playgroud)

就是这样。

每次要访问安全(身份验证)端点时,都应该发送标头承载。

笔记:

  • 令牌通常有生命周期或已过期,只需确保
  • 如果为了避免在刷新页面时丢失令牌而将令牌保存到本地存储,请确保在注销时清除本地存储
  • 检查文档为 laravel 创建令牌。