如何通过 Postman (API) 在 Jetstream 上注册
Posted
技术标签:
【中文标题】如何通过 Postman (API) 在 Jetstream 上注册【英文标题】:How to register on Jetstream via Postman (API) 【发布时间】:2021-06-24 09:50:07 【问题描述】:第一步:我通过 Postman 在 api/reg 上发布数据
第二步:我正在完美地获取所有发送的数据
第三步:没什么,哈哈,我无法进入第三步,如何将这些数据发送到数据库,Jetstream 是怎么做的?
不知怎的,我发现了这个CreateNewUser.php
,通过dd()
我发现我的常规刀片寄存器信息到了这一点,但它从哪里来,又去哪里是一个谜,没有互联网上的任何信息,所以我在我的 Laravel 项目中获取注册数据(姓名,电子邮件......),在我的 Laravel 项目中再次有一些机制可以升级(添加令牌等......)并发送我的数据到数据库,如何将这两个东西相互连接?提前致谢
【问题讨论】:
【参考方案1】:Jetstream 不打算以这种方式使用,如果你想公开一个 API,你应该使用 Laravel Sanctum 或 Laravel Passport 之类的东西。 Sanctum 更轻巧,工作流程更简单,Passport 更重,提供完整的 oauth 工作流程,这在某些情况下可能有点过分。这两种解决方案都使用令牌身份验证,但 Jetstream 不提供开箱即用的功能。
也就是说,回答您关于这一切如何运作的问题。
Jetstream 使用Laravel Fortify 作为其网络身份验证提供程序。它带有一堆预定义的路由,您可以使用php artisan route:list --compact
查看所有这些路由。您感兴趣的路线是映射到Laravel\Fortify\Http\Controllers\RegisteredUserController@store
的POST /register
路线。提交注册表单后,数据将发送到该控制器/方法。该方法需要两个参数,一个Request
对象和一个CreatesNewUsers
对象,这两个参数都是由Laravel注入的IoCservice container。
传递给store
方法的CreatesNewUsers
对象是您在App\Actions\Fortify
中找到的CreateNewUser
类的一个实例,该类随后执行注册新用户的操作。如果您要修改 User
类的结构,例如添加电话号码,则需要编辑 CreateNewUser
以包含用户注册时需要的新要求。
这里有一个很好的教程,教你如何Build a Restful API in PHP with Laravel Sanctum。
【讨论】:
以上是关于如何通过 Postman (API) 在 Jetstream 上注册的主要内容,如果未能解决你的问题,请参考以下文章
如何在没有 SPA 或图形界面的情况下,仅通过 POSTMAN 访问 Laravel Sanctum 的 API 路由?
如何在 Header@Postman 中发送 api 密钥?
Laravel:如何通过 API postman 上传图像并将其保存到数据库(phpmyadmin)