https://github.com/we7coreteam/w7-rangine-http-message
swoole request / response 的 psr 标准的实现
https://github.com/we7coreteam/w7-rangine-http-message
psr rangine response-psr swoole swoole-request
Last synced: 5 months ago
JSON representation
swoole request / response 的 psr 标准的实现
- Host: GitHub
- URL: https://github.com/we7coreteam/w7-rangine-http-message
- Owner: we7coreteam
- License: apache-2.0
- Created: 2019-05-31T05:42:56.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2023-03-24T09:48:47.000Z (about 3 years ago)
- Last Synced: 2025-03-16T17:19:07.301Z (over 1 year ago)
- Topics: psr, rangine, response-psr, swoole, swoole-request
- Language: PHP
- Homepage: https://rangine.com
- Size: 165 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# we7HttpMessage
swoole request / response 的 psr 标准的实现,fork 自 Swoft Http-message 组件,感谢 Swoft 团队。
支持下载文件及发送文件Chunk。兼容Fpm模式和Swoole Server模式,根据不同的来源来构造 Request 和 Response
# use
#### 初始化 Swoole Request Response对象
```php
$server = new \Swoole\Http\Server('0.0.0.0', 88, SWOOLE_PROCESS, SWOOLE_SOCK_TCP);
$server->on('request', function ($request, $response) {
$psr7Request = \W7\Http\Message\Server\Request::loadFromSwooleRequest($request);
$psr7Response = new \W7\Http\Message\Server\Response();
$psr7Response->setOutputer(new \W7\Http\Message\Outputer\SwooleResponseOutputer($response));
//获取 Post
$code = $psr7Request->post('code');
// 发送一个文件
// $filePath 下载的文件物理路径
// $startPos 需要分片下载时,指定文件的开始位置
// $chunkFileSize 需要分片下载时,每个分片的大小
$psr7Response->withFile(new File($filePath, $startPos, $chunkFileSize));
});
$server->start();
```
#### 初始化 Fpm Request Response对象
```php
$psr7Request = \W7\Http\Message\Server\Request::loadFromFpmRequest();
$psr7Response = new \W7\Http\Message\Server\Response();
$psr7Response->setOutputer(new \W7\Http\Message\Outputer\FpmResponseOutputer());
```
其它使用方法参考软擎开发文档
[请求 Request](https://wiki.w7.cc/chapter/1?id=106#)
[响应 Response](https://wiki.w7.cc/chapter/1?id=110#)