使用Larvel后端向React前端发送会话数据



我有一个比较简单的认证系统,使用ReactTS作为前端,Laravel作为后端。我要做的是发送错误从后端到前端,当我重定向用户。这是我目前的代码:

return redirect('/account')->withErrors('Error here');

我也试过了:

return redirect('/account')->with('message', 'Error here');

但是在我的React前端,我使用flash管理器来处理错误。但是,我不知道如何在前端获得此错误或会话数据。代码:

addFlash({ key: 'account', message: 'error here' });

该函数只接收一条消息,并以彩色条显示给用户。我的问题是我不知道如何得到我在前端重定向的这些错误。

正如我理解你的问题,你已经分开后端和前端,可能有一个API来处理你的请求。如果是这种情况,而且我理解正确,那么我会告诉你我是如何处理的,也许它也会对你有所帮助。

在我的例子中,我返回一个HTTP响应,无论它是错误的还是成功的,我认为你应该做同样的,让我给你一个简单的例子来更好地解释它。

这是我的控制器(简化为您的关注):

class CreateEventRegistrationController
{
public function __invoke(Request $request)
{
/** 
Here you validate your fields or something
specific logic for your project.
*/
$validator = Validator::make($request->all(), [
'firstName'    => 'required',
'lastName'     => 'required'
]);
/**
If your validation fails then throw an HttpResponseException
*/
if ($validator->fails()) {
throw new HttpResponseException(response()->json([
'errors' => $validator->errors()
]));
}
/** 
Store something in database or whatever you need to do in your app
*/

/**
And at last return a successful response
after everything is working as expected.
*/
return response('Created successfully', Response::HTTP_CREATED);
}

有了这个逻辑,然后我在前端部分有消息,我在那里处理错误消息或成功消息。

希望这对你有帮助,如果我不能正确理解你的问题,你可以更具体地评论,这样我就可以更多地帮助你。

最新更新