目前,我的用户必须获取Route::get
提供的访问表单,然后填写它以获取Route::post
给出的结果视图。我需要创建一个可共享的链接,例如/account/search/vrm/{vrm}
,其中{vrm}
是通常填写在表单页面上的VRM。然后,此VRM需要重定向到Route::post
作为发布数据。这需要由我的控制器完成。我怎样才能在我的控制器中执行此操作?
路线:
// Shows form view
Route::get('/account/search', 'User\AccountController@getSearch')->name('account.search');
// Shows result view
Route::post('/account/search', 'User\AccountController@runSearch');
// Redirect to /account/search as POST
Route::get('/account/search/vrm/{vrm}', function($vrm) { ???????? });
答案 0 :(得分:1)
无法重定向POST。
最好的办法是让他们登陆一个页面,其中包含一个带有<input type="hidden">
字段的表单和一些立即重新提交到所需目的地的JavaScript。
答案 1 :(得分:0)
答案 2 :(得分:0)
return redirect()->route('YOUR_ROUTE',['PARAM'=>'VARIABLE'])
答案 3 :(得分:0)
对于那些后来的人: 如果您为视图使用刀片模板引擎,您可以在表单开始标记后添加“@csrf”刀片指令以防止这种情况。这是由 laravel 完成的,以防止跨站点引用攻击。通过添加此指令,您可以解决这个问题。