内容简介:YurunHttp 是开源的 PHP HTTP 类库,支持链式操作,简单易用。 支持所有常见的 GET、POST、PUT、DELETE、UPDATE 等请求方式,支持上传下载、设置和读取 header、Cookie、请求参数、失败重试、限速、代理、证书等。...
YurunHttp 是开源的 PHP HTTP 类库,支持链式操作,简单易用。
支持所有常见的 GET、POST、PUT、DELETE、UPDATE 等请求方式,支持上传下载、设置和读取 header、Cookie、请求参数、失败重试、限速、代理、证书等。
3.x 版完美支持 Curl、Swoole 协程。
我们有完善的在线技术文档:http://doc.yurunsoft.com/YurunHttp
API 文档:https://apidoc.gitee.com/yurunsoft/YurunHttp
Gitee:https://gitee.com/yurunsoft/YurunHttp
Github:https://github.com/Yurunsoft/YurunHttp
git仓库中test目录里是示例代码!
更新日志(v3.1.0):
新增:
-
新增 CookieManager,用于管理一个实例下的会话。现在同一个HttpRequest类实例,会自动管理 Cookie。
-
增加测试用例(PHP5.4 - PHP7.3)、示例代码
优化:
-
现在只有状态码为301、302、303,才更改重定向请求方法为 GET
-
优化 StatusCode 类
-
Swoole 重定向地址的 host、port、scheme 与上一个地址保持一致的话,复用 $client
-
同一个 HttpRequest 对象重复请求时,Curl 资源不再重新 init
-
Uri->getPort() 不再根据协议自动返回缺省端口
新增 Uri::getServerPort() 方法获取端口,支持获取缺省 -
Uri::getDomain() 方法改为静态方法
-
优化 close()、__destruct()
-
Curl CURLOPT_COOKIEJAR 默认值改为 php://memory,不再写入文件
-
优化 Curl header 处理性能
修复:
- 修复 Swoole Handler Host 不带端口号问题
Composer
本项目可以使用composer安装,遵循psr-4自动加载规则,在你的 composer.json
中加入下面的内容
{ "require": { "yurunsoft/yurun-http": "~3.1" } }
然后执行 composer update
安装。
之后你便可以使用 include "vendor/autoload.php";
来自动加载类。(ps:不要忘了namespace)
用法
简单调用
<?php use Yurun\Util\HttpRequest; $http = new HttpRequest; $response = $http->ua('YurunHttp') ->get('http://www.baidu.com'); echo 'html:', PHP_EOL, $response->body();
PSR-7 请求构建
<?php use Yurun\Util\YurunHttp\Http\Request; use Yurun\Util\YurunHttp; $url = 'http://www.baidu.com'; // 构造方法定义:__construct($uri = null, array $headers = [], $body = '', $method = RequestMethod::GET, $version = '1.1', array $server = [], array $cookies = [], array $files = []) $request = new Request($url); // 发送请求并获取结果 $response = YurunHttp::send($request); var_dump($response);
Swoole 协程模式
<?php use Yurun\Util\YurunHttp; use Yurun\Util\HttpRequest; // 设置默认请求处理器为 Swoole YurunHttp::setDefaultHandler('Yurun\Util\YurunHttp\Handler\Swoole'); // php 5.4 // YurunHttp::setDefaultHandler(\Yurun\Util\YurunHttp\Handler\Swoole::class); // php 5.5+ // Swoole 处理器必须在协程中调用 go('test'); function test() { $http = new HttpRequest; $response = $http->get('http://www.baidu.com'); echo 'html:', PHP_EOL, $response->body(); }
具体详见examples
目录中的示例代码
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- WePush 3.6.1 发布,支持批量请求
- C#实现请求唯一性校验支持高并发
- 封装一个原生js的ajax请求,支持IE9CORS跨域请求
- hi-nginx 1.8.6 发布,支持子请求
- hi-nginx 1.8.6 发布,支持子请求
- Spring Boot中如何扩展XML请求和响应的支持
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
微机原理与接口技术
李文英、李勤、刘星、宋蕴新 / 清华大学出版社 / 2001-9 / 26.00元
《高等院校计算机应用技术规划教材•应用型教材系列•微机原理与接口技术》是“高职高专计算机系列教材”之一。全书包括微机原理、汇编语言、接口技术三部分内容。微机原理部分讲述了80x86的内部结构及工作原理、半导体存储器及其系统、微型机总线结构等。汇编语言部分讲述了指令系统、编程技巧。接口技术部分讲述了中断系统、中断控制器、并行接口、串行接口、DMA控制器、定时器,以及A/D、D/A转换器等常用芯片的硬......一起来看看 《微机原理与接口技术》 这本书的介绍吧!