• 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的一些用作和功能后,我们来看看它如何取数据

    1、首先创建Controller,然后在route中注册一个路由:

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

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

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

    3、我们如何来输入参数呢?

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

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

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

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

    2、在控制器中注册方法:

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

    3、使用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中就能看见。

  • 相关阅读:
    提高软件开发内功的推荐阅读列表
    oracle如何使用dblink链接另一个数据库
    代码不可读
    oracle如何使用dblink链接另一个数据库
    程序猿的吐槽三——改进还是不改进
    程序猿的吐槽一
    软件模式
    用户分类
    Matplotlib简介和pyplot的简单使用——subplot
    Linux下Eclipse的PyDev和CDT的安装和配置
  • 原文地址:https://www.cnblogs.com/Alex-sk/p/7134924.html
Copyright © 2020-2023  润新知