Solución:
Puedes usar Solicitud :: consulta () para conseguir solo OBTENER parámetros. Tenga en cuenta que no existen garantías sobre la coherencia en el orden de los parámetros que obtiene de GET, por lo que es posible que deba ordenar la matriz antes de calcular la firma, dependiendo de cómo calcule la firma.
Si necesita algo sencillo, puede usar el ayudante global:
$pathData = request()->path(); <br />
$queryData = request()->query(); <br />
$postData = array_diff(request()->all(), request()->query());
https://laravel.com/docs/5.6/requests
Siga estas instrucciones para ampliar la clase de solicitud de Laravel con la suya propia:
https://stackoverflow.com/a/30840179/517371
Luego, en su propia clase Request, copie el input()
método de IlluminateHttpRequest
y quitar + $this->query->all()
:
public function input($key = null, $default = null)
{
$input = $this->getInputSource()->all();
return data_get($input, $key, $default);
}
¡Bingo! Ahora en una solicitud POST, Request::query()
devuelve los parámetros de la consulta (URL), mientras que Request::input()
solo devuelve parámetros del formulario / multipart / JSON / cualquier fuente de entrada.