我是PHP和Laravel的新手,我一直在研究教程。我正在尝试将json传递到其他路由,但是出现一条错误消息
BadMethodCallException
Call to undefined method Illuminate\Http\RedirectResponse::response()
在我的路线上,我有
Route::get('/nuevo','temm@changeView')
->name('tron');
Route::post('/postaedd','temm@fetchAndDis')
->name('postInfoo');
Route::post('/postedd12321',"temm@pazze")
->name('pazze');
在我的控制器上,我有
public function pazze(){
return view('pass');
}
public function fetchAndDis(\Illuminate\Http\Request $request){
$this->validate($request, [
'email' => "required|min:5",
"name" => "required|min:1"
]);
$email = $request->input('email');
$name = $request->input("name");
$info=[
'email' => $email,
"name" => $name
];
return
redirect()
->route('pazze')
->with('info', $info)
->response()
->json($info, 200);
}
提交表单后,我收到错误后
我不确定为什么需要JSON,但是可以将数据刷新到会话中,然后可以检查会话的另一条路径上是否有变量。您的fetchAndDis
方法可以返回重定向,并将数据刷新到会话中:
return redirect()->route('pazze')->with('info', $info);
然后在pazze
方法中,您可以获取刷新的会话数据:
$info = $request->session()->get('info');
然后您可以检查使用或不使用会话数据。
Laravel 6.x Docs - Responses - Redirects - Redirecting with Flashed Session Data with
Laravel 6.x Docs - Sessions - Using the Session - Retrieving Data get