В Laravel, как я могу получить * только * параметры POST?

Я знаю, что можно использовать $request->get('my_param') или Input::get('my_param') чтобы получить параметр запроса POST или GET в Laravel (теперь я играю с версией v5 / dev, но это то же самое для 4.2).

Но как я могу убедиться, что мой my_param пришел через параметр POST и был не просто из-за ?my_param=42 добавленного к URL-адресу? (кроме того, чтобы вернуться к суперглабрам ol ' $_POST и $_GET и выдать проверяемость из окна)

(Примечание. Я также знаю, что метод Request::get даст мне параметр POST для запроса POST, если оба POST имеют параметр URL / GET с тем же именем, но … но если парам приземляется через строка запроса url вместо этого, я хочу, чтобы Laravel-идиоматический способ узнать это)

    В классе Illuminate\Http\Request (или фактически в классе Symphony, который он расширяет с Symfony\Component\HttpFoundation\Request ) есть две переменные класса, которые хранят параметры запроса.

    public $query – для параметров GET

    public $request – для параметров POST

    Оба являются экземпляром Symfony\Component\HttpFoundation\ParameterBag который реализует метод get .

    Вот что вы можете сделать (хотя это не очень красиво)

     $request = Request::instance(); $request->request->get('my_param'); 

    Почему вы пытаетесь усложнить ситуацию, когда можете легко сделать то, что вам нужно:

     $posted = $_POST;