我希望API由移动应用程序使用,因此我尝试实现密码授予令牌.我创建了一个密码授予客户端,以及令牌请求进程……
$response = $http->post('http://my-app.com/oauth/token',[ 'form_params' => [ 'grant_type' => 'password','clIEnt_ID' => 'clIEnt-ID','clIEnt_secret' => 'clIEnt-secret','username' => 'my@email.com','password' => 'my-password','scope' => '',],]);
…按预期工作,为我的一个用户返回访问令牌和刷新令牌.
一方面,
PHP artisan route:List
列出API / user URI的正确中间件:API,auth:API
API guard的驱动程序在config / auth.PHP中正确设置为passport.
总而言之,安装过程的每一步都已完成(https://laravel.com/docs/5.3/passport#installation).
默认API.PHP的内容:
Route::get('/user',function (Request $request) { return $request->user();})->mIDdleware('auth:API');
当我访问http://my-app.com/api/user时出现问题,因为它似乎是使用’web’中间件验证请求,而不是’API’…
当我访问时,如果用户未登录,我将被重定向到/ login(登录表单),如果是…则重定向到/ home
任何帮助将非常感激.
提前致谢.
我发送请求到http://my-app.com/api/user与http标头错误.我发送:
Type: Authorization - Content: Bearer: $accesstoken
……正确的方法是:
Type: Authorization - Content: Bearer $accesstoken (without colon)
我从没想过这可能是一个错字……无论如何,错误并不容易被发现,因为重定向到登录表单从一开始就误导了我.我相信这确实是一种奇怪的行为……
总结以上是内存溢出为你收集整理的php – Laravel Passport“auth:api”中间件充当“web,auth”中间件全部内容,希望文章能够帮你解决php – Laravel Passport“auth:api”中间件充当“web,auth”中间件所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)