Php 对于API路由和Web前端路由,Laravel身份验证表现不同
首先,我是PHP和Laravel的新手,所以你必须原谅我是个笨蛋 无论如何 我一直遵循本教程在Laravel中创建API 所有API调用都按预期工作。在完成了教程之后,我决定要一个登录/注册/忘记密码/重置密码等的前端视图 我注意到Laravel有以下命令:Php 对于API路由和Web前端路由,Laravel身份验证表现不同,php,laravel,api,laravel-5.3,lumen,Php,Laravel,Api,Laravel 5.3,Lumen,首先,我是PHP和Laravel的新手,所以你必须原谅我是个笨蛋 无论如何 我一直遵循本教程在Laravel中创建API 所有API调用都按预期工作。在完成了教程之后,我决定要一个登录/注册/忘记密码/重置密码等的前端视图 我注意到Laravel有以下命令: `php artisan make:auth` 这创建了前端所需的必要文件 我遇到的问题是,php artisan make:auth似乎已经: /app/Http/Controllers/Auth/ForgotPasswordContr
`php artisan make:auth`
这创建了前端所需的必要文件
我遇到的问题是,php artisan make:auth
似乎已经:
/app/Http/Controllers/Auth/ForgotPasswordController.php
/app/Http/Controllers/Auth/LoginController.php
/app/Http/Controllers/Auth/RegisterController.php
/app/Http/Controllers/Auth/ResetPasswordController.php
我遵循的教程包含以下API调用文件:
/app/Api/V1/Controllers/LoginController.php
/app/Api/V1/Controllers/ForgotPasswordController.php
/app/Api/V1/Controllers/SignUpController.php
/app/Api/V1/Controllers/ResetPasswordController.php
如果我使用API或前端,它们似乎是独立运行的。例如,如果我使用register前端进行注册,然后使用前端或api进行登录,则登录失败,详细信息不正确。我认为这是因为前端在密码上使用bcrypt
来创建用户。如果我从寄存器前端移除bcrypt
,则使用前端:
1.登记
2.注销
3.忘记密码
4.完全重置密码
5.这会让我登录,但如果我注销然后尝试登录,它将不再工作。
我再次认为这是由于前端ResetPasswordController的bcrypt
我的问题是如何获得前端和api调用,这些调用是在我遵循的教程中设置的,以同样的方式工作。感觉我不应该在/app/Http/controllers/Auth/
和/app/Api/V1/controllers/
中使用重复的控制器,但我无法确定要更改什么
如果能提供任何帮助,我将不胜感激
谢谢不同的中间产品?不知道这意味着什么。。。正如我所说,我对php和laravel是新手。。。同时,我从对密码进行哈希运算的用户模型中删除了setPasswordAttribute函数。然后在/app/Api/V1/Controllers/中,对于SignUpController和ResetPasswordController,我使用bcrypt设置密码。现在,API调用的工作原理与web前端相同。虽然这感觉不正确,但似乎是我现在能得到的最好的。感谢您的评论。如果您使用的是clean Laravel 5.3,那么您有两个路由,一个用于
web
调用,另一个用于api
调用。他们都使用自己的中间件。感谢您花时间解释。