thinkphp路由,请求和响应

文章介绍了ThinkPHP框架中定义路由、获取路由参数、处理跨域请求以及响应数据的方法。通过示例展示了如何定义规则,如`Route::get(admin/getId/:id,/app/controller/Admin/getId)`来获取参数,并使用`allowCrossDomain`处理跨域,以及如何设置缓存和处理请求响应。
摘要由CSDN通过智能技术生成

定义

thinkphp定义路由一般在route路由下的app.php中
下面这是一个简单的路由

Route::rule('admin/login','/app/controller/Admin/login')->middleware(\app\middleware\MyMiddleware::class);

该路由表示当访问admin/login时,会去调用/app/controller/Admin/login这个方法,同时后面还可以跟上自己定义的中间件用来做数据处理和权限校验

获取路由后面的参数

具体细节可以看官方文档
地址: https://www.kancloud.cn/manual/thinkphp6_0/1037499
定义路由

Route::get('admin/getId/:id','/app/controller/Admin/getId');

控制器方法

 public function getId($id){
        return json(['id'=>$id]);
    }

此时我们请求对应的路由就会返回,路由后面的id值
在这里插入图片描述

跨域请求

这个一个简单的配置解决跨域请求
ext(‘html’)设置路由的默认扩展名为html
allowCrossDomain用于设置跨域请求规则
‘Access-Control-Allow-Origin’ => ‘*’:允许任何域名访问该路由。
‘Access-Control-Allow-Credentials’ => ‘true’:允许跨域请求携带凭证,如cookie

Route::get('admin/getId/:id', '/app/controller/Admin/getId')
    ->ext('html')
    ->allowCrossDomain([
        'Access-Control-Allow-Origin'        => '*',
        'Access-Control-Allow-Credentials'   => 'true'
    ]);

请求

先引入Request类,然后通过param接收请求参数

  use think\facade\Request;

  public function getUserName()
    {
        return json([
            'username' => Request::param('username'),
            'password' => Request::param('password'),
         	'ip'=>Request::ip()
        ]);
    }

在这里插入图片描述
请求缓存
定义GET请求路由规则 并设置3600秒的缓存
在路由后面添加一个cache

Route::get('new/:id','News/read')->cache(3600);

响应

按照官方的说法,大多数情况,我们不需要关注Response对象本身,只需要在控制器的操作方法中返回数据即可。
这就是一个简单的响应案例

 return json([
            'username' => Request::param('username'),
            'password' => Request::param('password'),
            'ip'=>Request::ip()
        ]);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

crypto_犀牛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值