Laravel 5.1 Request请求怎么用?

What is Request? -- 什么是Request?

Request是请求类,当用户访问一个路由时就会向服务器发送一个请求,咱们有时呢 会获取用户传过来的一些参数来作相应的相应逻辑,因此说 Request是咱们Laravel攻城狮的基本功,必需要掌握滴~数据库

 

What functions does it have? -- 它有什么功能?

它能够取到用户发过来的数据,能够获取到当前请求的方法 如GET和POST,URL和URI等。浏览器

 

When do we use it? -- 何时使用?

有时在Controller中 根据用户发来的数据作一些逻辑 好比对数据库的更改、返回一些数据,再有就是在middleware中作一些认证时用到(好比说限制只有登陆才可访问)。服务器

 

用Request取数据

GET方法:了解Request的一些用做和功能后,咱们来看看它如何取数据post

一、首先建立Controller,而后在route中注册一个路由:url

Route::get('/test', 'TestController@index');

二、这个路由指向到TestController的index方法spa

    public function index(Request $request)
    {
        echo $request->id;
    }
    public function index(Request $request)
    {
        // 这种方法也能够
        echo $request->input('id');
    }

 

三、咱们如何来输入参数呢?code

在浏览器输入:http://localhost:8000/test?id=5
就会打印出:5

 

POST方法: 要发送简单的POST请求,推荐你们下一个Postman。blog

一、首先注册一条post路由:路由

Route::post('/test/post', 'TestController@testPost');

二、在控制器中注册方法:字符串

    public function testPost(Request $request)
    {
        // 取到单个值
//        dd($request->name);
        // 取到全部值
//        dd($request->all());
        // 只取哪些值
//        dd($request->only(['age','name']));
        // 取出除了这些键的值
        dd($request->except('name'));
    }

三、使用Postman发送一条请求,在body中加入如下键值对:

name : Alex
age : 24
birthday : 1993-4-16

以后在Postman中就能够看见相应的数据了,我不会展现给你看,你须要本身敲敲代码。

 

Request提供的一些方法

如下方法能够在写middleware中运用到,关于middleware 下一篇就会讲到。

$request->method();     // 返回一个字符串 若是是GET方式 则返回"GET" 
$request->path();       // 返回一个字符串 好比你请求的路径是 localhost:8000/test 那么就返回"test"
$request->url();        // 返回一个字符串 好比你请求的路径是 localhost:8000/test?id=10 那么就返回""http://localhost:8000/test""
$request->fullUrl();    // 返回一个字符串 好比你请求的路径是 localhost:8000/test?id=10 那么就返回"http://localhost:8000/test?id=1"

更多方法进到Request中就能看见。

相关文章
相关标签/搜索