$request 不适用于 laravel get 方法

Posted

技术标签:

【中文标题】$request 不适用于 laravel get 方法【英文标题】:$request not working on laravel get method 【发布时间】:2018-04-22 06:49:17 【问题描述】:

我有路线

Route::get('student-search', 'Students@search')

和浏览器上的网址

student-search?session=2&name=raj&grade=1&section=a

但是在返回 $request 时,它返回 empty 。同样的事情在本地运行良好,但在将其传输到服务器后无法运行。

搜索功能代码如下

public function search(Request $request)
        return $request;
...

并且 $request 返回 empty 。虽然同样的事情在 localhost 上工作。

【问题讨论】:

请向我们展示您的search 函数的代码。 在哪个文件中实现了“搜索”功能? 看我的回答@salin kunvar 【参考方案1】:

试试这个代码:-

use Illuminate\Http\Request; // add this in top controller
public function search(Request $request) 
    $data = $request->all();
    echo "<pre>"; print_r($data);


   ------OR--------

use Request; // add this in top controller
public function search() 
    $data = Request::all();
    echo "<pre>"; print_r($data);

希望对你有帮助

【讨论】:

这确实让我感到困扰:您可以“使用”该请求,但您也可以“使用”立面请求。我永远不知道我需要哪一个。【参考方案2】:

您缺少的是您的服务器没有以任何形式的请求传递查询参数。如果您使用的是 nginx,请尝试

location / 
                try_files $uri $uri/ /index.php?$args;                
           

【讨论】:

以上是关于$request 不适用于 laravel get 方法的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 8速率限制器不适用于路线

Laravel表单请求验证不适用于getValidatorInstance()

yajra/laravel-datatables 搜索不适用于 laravel 5.7

Laravel Eloquent / keyBy不适用于相关实体

为啥 Laravel 中间件适用于单个路由而不适用于一组路由

Laravel Cors 中间件不适用于 POST 请求