atan

147 经验值

你可以试一下,从左往右['auth.basic', 'auth'],并没有弹出auth.basic方式,而是直接到了auth方式;
用两种验证就是为了让用户从一些已登陆的第三方应用跳转过来的时候不用再输一次用户名和密码,类似单点登录,而不是从第三方跳转过来的时候使用常规登录

JWT并不是只能用于API的吧,只要是Token-Based认证都可以用。我发现这个问题的原因似乎是middleware的顺序问题,如果写成'middleware' => ['auth.basic', 'auth'],似乎也只会先进入auth middleware,而不会弹出basic认证框,那么究竟如何设置middleware优先级呢

我的场景是这样的,目前在局域网中搭建一个新的网站,我希望用户从另一个网站中传递json web token过来,如果token验证成功,用户直接完成登录;如果没有传过来token或者token无效,则跳出常规登录页面,输入用户名密码后完成登录。
目前试用的是tymon/jwt-auth扩展,但是这样写好像不行,直接会跳出登录页面,并没有验证token:
`
Route::group([

'middleware' => ['jwt.auth', 'auth']

], function () {

...

});
`