当我重定向路线时,无法访问请求数据。
这是ajax请求信息:
Content-Type: application/x-www-form-urlencoded
param1=my+param&request=search
routes.php文件
use Illuminate\Http\Request;
Route::any('/items/search', 'ItemsController@search');
Route::any('/items', [
function(Request $request){
if ($request->input('request') == 'search') {
// echo $request->input('param1'); // returns param1 value correctly
return redirect()->action('ItemsController@search')->withInput();
}
}
]);
这是控制器:
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use DB;
class ItemsController extends Controller
{
public function search(Request $request)
{
var_dump($request->all()); // returns: array(0) { }
}
}
重定向后,如何在控制器中访问帖子数据?
答案 0 :(得分:1)
方法withInput
将输入添加到Session。您可以使用$request->session->all()
在控制器中访问它。
话虽这么说,一种更加RESTful的方法是使用一条路由/items
并在控制器中决定是否根据输入参数过滤结果。
答案 1 :(得分:0)
试试这个
return redirect()->route('/items/search')->withInput();