资讯专栏INFORMATION COLUMN

YurunHttp v3.1.0,新增 Cookie 管理机制,单元测试支持

cnTomato / 1925人阅读

摘要:是开源的类库,支持链式操作,简单易用。支持所有常见的等请求方式,支持上传下载设置和读取请求参数失败重试限速代理证书等。版完美支持协程。现在同一个类实例,会自动管理。

YurunHttp 是开源的 PHP HTTP 类库,支持链式操作,简单易用。

支持所有常见的 GET、POST、PUT、DELETE、UPDATE 等请求方式,支持上传下载、设置和读取 header、Cookie、请求参数、失败重试、限速、代理、证书等。

3.x 版完美支持 Curl、Swoole 协程。

我们有完善的在线技术文档:http://doc.yurunsoft.com/Yuru...

API 文档:https://apidoc.gitee.com/yuru...

Gitee:https://gitee.com/yurunsoft/Y...

Github:https://github.com/Yurunsoft/...

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)

用法

简单调用

ua("YurunHttp")
                 ->get("http://www.baidu.com");

echo "html:", PHP_EOL, $response->body();

PSR-7 请求构建


Swoole 协程模式

get("http://www.baidu.com");
    echo "html:", PHP_EOL, $response->body();
}

具体详见examples目录中的示例代码

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/31786.html

相关文章

  • CityPicker城市选择器v3.1.0版本发布

    摘要:城市选择器使用方法请查看详细说明本次新版数据采用国家统计局的最新数据,较完整权威,建议更新使用最新版。新版改动较大,请仔细查看文档说明,有不明白的地方可以提,第一时间予以解决。赞赏人员列表赞赏的人 CityPicker 城市选择器 使用方法 请查看GitHub详细wiki -> citypicker 说明 本次新版数据采用国家统计局的最新数据,较完整权威,建议更新使用最新版。新版改动较...

    JessYanCoding 评论0 收藏0
  • 《Node.js从入门到上线》入门篇 (持续更新中)

    摘要:最近利用空闲时间写了一个从入门到上线的的实战教程从入门到上线目前还在更新中,入门篇已基本成型。本项目使用语法,采用搭建了一个博客系统,实现了文章管理用户登录注册权限控制分类管理等功能。实现线上部署左手代码右手砖抛砖引玉 最近利用空闲时间写了一个从入门到上线的的node实战教程《Node.js从入门到上线》A blog build with Koa2. 目前还在更新中,入门篇已基本成型。...

    CocoaChina 评论0 收藏0
  • PHP面试常考之会话控制

    摘要:一的会话也称为。如果启动会话成功,则函数返回,否则返回。会话启动后就可以载入该会话已经注册的会话变量以便使用。但数组创建的在会话结束后就会失效。预告本周三更新面试常考之网络协议,敬请期待。 你好,是我琉忆,欢迎您来到PHP面试专栏。本周(2019.2-25至3-1)的一三五更新的文章如下: 周一:PHP面试常考之会话控制周三:PHP面试常考之网络协议周五:PHP面试常考题之会话控制和...

    lsxiao 评论0 收藏0
  • 超实用百道Java面试题

    摘要:是的简称,运行环境,为的运行提供了所需的环境。分割字符串,返回分割后的字符串数组。当计算的值相同时,我们称之为冲突,的做法是用链表和红黑树存储相同的值的。迭代器取代了集合框架中的,迭代器允许调用者在迭代过程中移除元素。 Java基础1.JDK和JRE有什么区别? JDK 是java development kit的简称,java开发工具包,提供java的开发环境和运行环境。JRE 是j...

    MkkHou 评论0 收藏0
  • 接口测试常见问题

    摘要:同时我们也可以使用控件来实现小型的接口自动化来提高接口测试效率。接口测试的流程首先我们要了解需求,熟悉业务场景然后根据需求文档,接口文档以及业务场景来编写测试用例。 ...

    edgardeng 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<