laravel fortify登录后如何获取用户信息
How to get user information after login in laravel fortify
我在单页 Vue 应用程序中使用 laravel fortify。当我向 sitePath + '/login'
发送 XHR 请求时,我得到 {two_factor: false}
响应并且用户已登录。我如何添加用户信息以便将数据保存在本地存储中。
let response = await this.$root.requestPost(data, url);
async requestPost(data, requestUrl) {
const response = await axios.post(requestUrl, {
// ...data
}).catch(error => {
//
});
return response;
},
抱歉回答晚了。
但是今天我解决了同样的问题
在 FortifyServiceProvider 的 register() 方法中,您需要实现自己的 LoginResponse:
$this->app->instance(LoginResponse::class, new class implements LoginResponse {
public function toResponse($request)
{
/**
* @var User $user
*/
$user = $request->user();
return $request->wantsJson()
? response()->json(['two_factor' => false, 'email' => $user->email ])
: redirect()->intended(Fortify::redirects('login'));
}
});
文档 - https://laravel.com/docs/8.x/fortify#customizing-authentication-redirects
我在单页 Vue 应用程序中使用 laravel fortify。当我向 sitePath + '/login'
发送 XHR 请求时,我得到 {two_factor: false}
响应并且用户已登录。我如何添加用户信息以便将数据保存在本地存储中。
let response = await this.$root.requestPost(data, url);
async requestPost(data, requestUrl) {
const response = await axios.post(requestUrl, {
// ...data
}).catch(error => {
//
});
return response;
},
抱歉回答晚了。
但是今天我解决了同样的问题
在 FortifyServiceProvider 的 register() 方法中,您需要实现自己的 LoginResponse:
$this->app->instance(LoginResponse::class, new class implements LoginResponse {
public function toResponse($request)
{
/**
* @var User $user
*/
$user = $request->user();
return $request->wantsJson()
? response()->json(['two_factor' => false, 'email' => $user->email ])
: redirect()->intended(Fortify::redirects('login'));
}
});
文档 - https://laravel.com/docs/8.x/fortify#customizing-authentication-redirects