Lumen 是否支持 query parameters?

Lumen文档里使用$request->input('key')的方式无法获取到 query parameter,用Laravel文档里提到的各种方式也没有取到,google了一圈没有发现相关的问题,是Lumen里不建议使用 query parameter 么?

router web.php

$router->get('/info/test', 'ExampleController@test');

controller ExampleController.php

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;

class ExampleController extends Controller
{
    public function __construct() {}

    public function test(Request $request)
    {
        return var_export([
            'query' => $request->query(),
            'input' => $request->input('q1'),
            'get' => $request->get('q1'),
            'all' => $request->all(),
        ], true);
    }
}

请求

{{host}}/info/test?q1=a1

返回

array ( 'query' => array ( ), 'input' => NULL, 'get' => NULL, 'all' => array ( ), )

PS. url parameters 是可以正常获取的。

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 1
ALMAS

lumen 的$request->input()是不是只对像post,put这样有body的请求生效,laravel中是query和body参数合并后填充到quer,body的,所以两种方法都可以获取到

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!