在控制器中使用use MiddlewareControllerTrait;
开启中间件支持
# 获取请求对象
通过 $this->request
获取请求对象(Request), 它是完全基于 PSR-7 标准实现的
TIP
注意 PSR-7 标准为 请求(Request) 进行了 immutable 机制 的设计,所有以 with 开头的方法的返回值都是一个新对象,不会修改原对象的值
# 获取用户输入
# 获取$_GET string类型数
$this->request->getString($name, $default = null)
# 获取$_POST string类型数据
$this->request->postString($name, $default = null)
# 获取refer string类型数据
$this->request->referString($name, $default = null)
# 获取$_REQUEST string类型数据
$this->request->requestString($name, $default = null)
# 获取$_GET int类型数据
$this->request->getInt($name, $default = null)
# 获取$_POST int类型数据
$this->request->postInt($name, $default = null)
# 获取refer int类型数据
$this->request->referInt($name, $default = null)
# 获取$_REQUEST int类型数据
$this->request->requestInt($name, $default = null)
# 获取$_GET bool类型数据
$this->request->getBool($name, $default = null)
# 获取$_POST bool类型数据
$this->request->postBool($name, $default = null)
# 获取$_REQUEST bool类型数据
$this->request->requestBool($name, $default = null)
# 获取refer bool类型数据
$this->request->referBool($name, $default = null)
# 获取请求信息
# 获取用户IP地址
$this->request->ip()
# 获取主机名称
$this->request->host()
# 获取基本地址
$this->request->baseUrl()
# 获取带全参数的url地址
$this->request->fullUrl()
# 判断是否为AJAX请求
$this->request->isAjax()
# 判断是否以cli方式运行
$this->request->isCli()
# 判断当前请求的是否为某类型
$this->request->isMethod()
# 文件
# 获取上传文件
$this->request->file()
# 检查文件是否存在
$this->request->hasFile()
# 保存文件
$myFile = $this->request->file('myfile');
$myFile->moveTo('/upload/path/myfile.png);
# Cookie
# 获取cookie
$this->request->cookie();//解密由框架加密后的cookie
# 判断cookie是否存在
$this->request->hasCookie() //判断解密由框架加密后的cookie是否存在
注意
cookie|hasCookie
方法处理cookie的时候默认加密key使用的是配置中auth_key
配置的key。所以如果有使用到请修改auth_key
配置的key
# 获取未经处理的cookie数据
$this->request->getCookieParams()
# 获取请求Json数据
# 数组方式获取json数据
$this->request->json();//返回转换成array的结果
$this->request->json('data.id');//获取json中的子级数据
# 返回未经处理的json数据
$this->request->jsonRaw()