zoukankan      html  css  js  c++  java
  • 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中就能看见。

  • 相关阅读:
    2018-9-4-Roslyn-通过-nuget-统一管理信息
    2018-9-4-Roslyn-通过-nuget-统一管理信息
    省赛前最后一次总结
    省赛前最后一次总结
    POJ 1845-Sumdiv(厉害了这个题)
    POJ 1845-Sumdiv(厉害了这个题)
    DP背包(一)
    DP背包(一)
    训练记录
    训练记录
  • 原文地址:https://www.cnblogs.com/Alex-sk/p/7134924.html
Copyright © 2011-2022 走看看