Car*_*lly 0 authentication inertiajs laravel laravel-passport
我已经使用 Laravel Passport 实现了 OAuth 系统,但该系统的登录和所有身份验证均由具有 Inertia 的 Laravel Jetstream 处理。
当我想要请求代码(使用授权代码授予)时,我的应用程序将我重定向到我的 OAuth 服务器,该服务器在继续之前要求我登录,此屏幕是 Laravel Jetstream 使用 Inertia (Vue) 登录生成的屏幕。当我登录时,它会将我重定向到授权页面,但是这个重定向很奇怪,因为该页面显示在 Vue(惯性)页面内,浏览器中的 URL 不会更新,并且如果我接受授权请求它将我重定向回我的应用程序,但重定向位于同一个 Vue 页面内,我的意思是,URL 与我的 OAuth 服务器登录名相同,但视图是请求代码的应用程序。
我认为 Vue 中的重定向存在问题,因为授权页面没有使用 Inertia(Laravel Passport 的默认授权页面),而且我不知道如何修复它,你能帮我吗?
这是一张图片:
正如你所看到的,它似乎是在模态中,但是是一个惯性错误页面,里面显示的是授权页面,是一个重定向错误,我不知道如何修复
小智 5
我和你有同样的问题,我解决了,如下:
在文件中AuthenticatedSessionController.php
/**
* Handle an incoming authentication request.
*
* @param \App\Http\Requests\Auth\LoginRequest $request
* @return \Illuminate\Http\RedirectResponse
*/
public function store(LoginRequest $request)
{
$request->authenticate();
$request->session()->regenerate();
if ($request->session()->has('url.intended')) {
return Inertia::location(session('url.intended'));
}
return redirect()->intended(RouteServiceProvider::HOME);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1487 次 |
| 最近记录: |