Joe*_*oco 35 php post get laravel-4
在我的控制器/动作中:
if(!empty($_POST))
{
if(Auth::attempt(Input::get('data')))
{
return Redirect::intended();
}
else
{
Session::flash('error_message','');
}
}
Run Code Online (Sandbox Code Playgroud)
有没有方法在Laravel检查该请求是否POST还是GET?
Tom*_*Tom 155
根据Laravels文档,有一个Request方法来检查它,所以你可以这样做:
$method = Request::method();
Run Code Online (Sandbox Code Playgroud)
要么
if (Request::isMethod('post'))
{
//
}
Run Code Online (Sandbox Code Playgroud)
小智 50
上述解决方案已过时.
根据Laravel文档:
$method = $request->method();
if ($request->isMethod('post')) {
//
}
Run Code Online (Sandbox Code Playgroud)
小智 18
我已经在 laravel 版本中解决了我的问题,如下所示:7+
**In routes/web.php:**
Route::post('url', YourController@yourMethod);
**In app/Http/Controllers:**
public function yourMethod(Request $request) {
switch ($request->method()) {
case 'POST':
// do anything in 'post request';
break;
case 'GET':
// do anything in 'get request';
break;
default:
// invalid request
break;
}
}
Run Code Online (Sandbox Code Playgroud)
当然有一种方法可以找出请求的类型,但是你应该定义一个处理请求的路由POST,因此你不需要条件语句.
routes.php文件
Route::post('url', YourController@yourPostMethod);
Run Code Online (Sandbox Code Playgroud)
在你的控制器/行动中
if(Auth::attempt(Input::get('data')))
{
return Redirect::intended();
}
//You don't need else since you return.
Session::flash('error_message','');
Run Code Online (Sandbox Code Playgroud)
这同样适用于GET请求.
Route::get('url', YourController@yourGetMethod);
Run Code Online (Sandbox Code Playgroud)
使用Request::getMethod()来获得用于当前请求的方法,但这应该是很少需要为Laravel会打电话给你的控制器的正确的方法,根据请求类型(即getFoo()对GET和postFoo()对POST).
| 归档时间: |
|
| 查看次数: |
56082 次 |
| 最近记录: |