首页 > 其他分享 >easyswoole - 控制器

easyswoole - 控制器

时间:2022-10-13 18:13:32浏览次数:50  
标签:控制器 HTTP 对象 easyswoole 获取 POST response 客户端

1.Request对象

生命周期

Request对象在系统中以单例模式存在,自收到客户端HTTP请求时自动创建,直至请求结束自动销毁。Request对象完全符合PSR7中的所有规范。

函数

  • getRequestParam()
    用于获取用户通过POST或者GET提交的参数(注意:若POST与GET存在同键名参数,则以GET为准)。
$data = $request->getRequestParam();
var_dump($data);
  • 获取文件信息
    getUploadedFiles()
    该方法用于获取客户端上传的全部文件信息。
//获取一个上传文件,返回的是一个\EasySwoole\Http\Message\UploadFile的对象
$img_file = $request->getUploadedFile('img');
//获取全部上传文件返回包含\EasySwoole\Http\Message\UploadFile对象的数组
$data = $request->getUploadedFiles();
  • getBody()
    该方法用于获取以非form-data或x-www-form-urlenceded编码格式POST提交的原始数据,相当于PHP中的$HTTP_RAW_POST_DATA。

  • 获得get内容
    getQueryParams()

  • 获得post内容
    getParsedBody()

  • 获得raw内容

$content = $request->getBody()->__toString();
$raw_array = json_decode($content, true);
  • 获得头部
    getHeaders();

  • 获得server
    getServerParams();

  • 获得cookie
    getCookieParams();

2.Response对象

生命周期

Response对象在系统中以单例模式存在,自收到客户端HTTP请求时自动创建,直至请求结束自动销毁。Response对象完全符合PSR7中的所有规范。

函数

  • write
    该方法用于向客户响应数据。

$this->response()->write('hello world');

  • redirect
    该方法用于将请求重定向至指定的URL

$this->response()->redirect("/newURL/index.html");

  • setCookie
    向客户端设置一个Cookie,用法与原生的setCookie一致。

  • getSwooleResponse
    用于获取原始的swoole_http_response实例。

  • end
    结束对该次HTTP请求响应,结束之后,无法再次向客户端响应数据.

  • withStatus
    向客户端发送HTTP状态码。

$this->response()->withStatus($statusCode);
注意:$statusCode必须为标准的HTTP允许状态码,具体请见Http Message中的Status对象。

  • withHeader
    用于向HTTP客户端发送一个header。

$this->response()->withHeader('Content-type','application/json;charset=utf-8');

标签:控制器,HTTP,对象,easyswoole,获取,POST,response,客户端
From: https://www.cnblogs.com/myifb/p/16789161.html

相关文章

  • 实验5:开源控制器实践——POX
    建立拓扑hub验证h1pingh2都能收到h1pingh3都能收到switch验证h1pingh2仅h2收到h1pingh3仅h3收到流程图进阶重新建立拓扑,无流表,编写POX模块Send......
  • .net控制器接口为什么要用 async/await?
    避免阻塞调用ASP.NETCore应用应设计为可同时处理许多请求。异步API允许较小线程池处理数千个并发请求,无需等待阻塞调用。线程可以处理另一个请求,而不是等待长时间运......
  • 实验4:开源控制器实践——OpenDaylight
    实验4:开源控制器实践——OpenDaylight一、实验目的能够独立完成OpenDaylight控制器的安装配置;能够使用Postman工具调用OpenDaylightAPI接口下发流表。二、实验环境......
  • 实验5:开源控制器实践——POX
    实验5:开源控制器实践——POX一、实验目的1.能够理解POX控制器的工作原理;2.通过验证POX的forwarding.hub和forwarding.l2_learning模块,初步掌握POX控制器的使用方法;3.......
  • 实验4:开源控制器实践——OpenDaylight
    实验4:开源控制器实践——OpenDaylight一、实验目的能够独立完成OpenDaylight控制器的安装配置;能够使用Postman工具调用OpenDaylightAPI接口下发流表。二、实验环境......
  • 实验4:开源控制器实践——OpenDaylight
    (一)基本要求1、利用Mininet平台搭建下图所示网络拓扑,并连接OpenDaylight控制器;2、通过Postman工具调用OpenDaylight提供的API下发流表,实现拓扑内主机h1和h3网络中断10s......
  • 实验5:开源控制器实践——POX
    *基础要求h1pingh2的tcpdump抓包结果h2pingh3的tcpdump抓包结果L2_learning模块代码流程图*个人总结实验难度:基本要求比较适中,进阶要求比较困难。......
  • 实验4:开源控制器实践——OpenDaylight
    实验4:开源控制器实践——OpenDaylight一、实验目的能够独立完成OpenDaylight控制器的安装配置;能够使用Postman工具调用OpenDaylightAPI接口下发流表。二、实验环境Ubuntu......
  • 实验4:开源控制器实践——OpenDaylight
    实验4:开源控制器实践——OpenDaylight一、实验目的能够独立完成OpenDaylight控制器的安装配置;能够使用Postman工具调用OpenDaylightAPI接口下发流表。二、实验环境Ub......
  • 实验4:开源控制器实践——OpenDaylight
    一、实验目的1.能够独立完成OpenDaylight控制器的安装配置;2.能够使用Postman工具调用OpenDaylightAPI接口下发流表。二、实验环境1.下载虚拟机软件OracleVisualBox或......