请求响应类
优质
小牛编辑
135浏览
2023-12-01
介绍
YurunHttp 的请求响应类,结果类。除了遵循 PSR-7 规范,另外还增加了一些人性化的方法。
类:Yurun\Util\YurunHttp\Http\Response
use Yurun\Util\HttpRequest;
$http = new HttpRequest;
$response = $http->get('http://www.baidu.com');
方法
响应内容(页面内容)
$content = $response->body();
自动编码转换
// gb2312 转 UTF-8
$content = $response->body('gb2312', 'UTF-8');
json
// 返回对象
$data = $response->json();
// 返回数组
$data = $response->json(true);
// gb2312 转 UTF-8
$data = $response->json(true, 'gb2312', 'UTF-8');
jsonp
获取 jsonp
格式内容,去除方法名,像 json
一样转为数据
// 返回对象
$data = $response->jsonp();
// 返回数组
$data = $response->jsonp(true);
// gb2312 转 UTF-8
$data = $response->jsonp(true, 'gb2312', 'UTF-8');
xml
// 返回 \SimpleXMLElement 对象
$data = $response->xml();
// 返回数组
$data = $response->xml(true);
// gb2312 转 UTF-8
$data = $response->xml(false, 'gb2312', 'UTF-8');
响应头
获取单个响应头:
var_dump($response->getHeaderLine('Content-Type'));
响应头是否存在:
var_dump($response->hasHeader('Content-Type'));
获取所有响应头:
var_dump($response->getHeaders());
Cookie
获取 Cookie 值:
// 通常用法
var_dump($response->getCookie('a'));
// 设置默认值为 test
var_dump($response->getCookie('a', 'test'));
获取所有 Cookie:
var_dump($response->getCookieParams());
获取所有cookie原始参数,包含expires、path、domain等:
var_dump($response->getCookieOriginParams());
获取cookie原始参数值,包含expires、path、domain等:
// 通常用法
var_dump($response->getCookieOrigin('a'));
// 设置默认值为 test
var_dump($response->getCookieOrigin('a', 'test'));
状态码
两个用法一致:
var_dump($response->httpCode());
var_dump($response->getStatusCode());
获取请求耗时
两个用法一致:
var_dump($response->totalTime());
var_dump($response->getTotalTime());
错误相关
// 错误代码-两个用法一致:
var_dump($response->errno());
var_dump($response->getErrno());
// 错误信息-两个用法一致:
var_dump($response->error());
var_dump($response->getError());
获取请求体
/** @var \Yurun\Util\YurunHttp\Http\Request $request */
$request = $response->getRequest();
获取 http2 streamId
var_dump($response->getStreamId());