Laravel 5.3 - POST受到GET值的污染

时间:2017-08-24 02:34:19

标签: php post laravel-5.3

回到(真实)时代,我们曾经使用$_GET$_POST!现在我们得到了Laravel的\Request::input()。因此,这里发生了什么:

if(\Request::isMethod('post'))
{
    $POST = \Request::input();
}

如果我在$ _GET中有一个变量,那么该值也会进入POST。

例如:

&x=1 // @ e。在查询字符串

$_POST['x'] = null; //因为它没有与表单一起发布,但可能是因为有一个同名的字段

$POST['x'] = 1; //在GET中,但是应该为null,因为它不在$ _POST中!

任何获得POSTed vars的解决方案?或者我应该使用$ _POST?

由于

1 个答案:

答案 0 :(得分:0)

我认为从Request实例获取此功能的唯一方法是访问query(GET)或request(POST)属性。这些都是ParameterBag个实例,因此您可能会使用它们的->get()方法来访问所需的参数。