myth21 / context-http-requester
上下文 HTTP 请求者
dev-main
2023-05-26 10:40 UTC
Requires (Dev)
- phpunit/phpunit: 9.3
This package is auto-updated.
Last update: 2024-09-26 13:32:53 UTC
README
特性:该类通过 PHP 中的流上下文抽象 HTTP 通信。它提供方便的方法来发送 GET、POST 和 PUT 请求,并设置请求头。该类存储最后发送请求的请求头和响应头,以供进一步检查。它还具有配置选项来解码或不解码响应。该类可扩展以实现其他 HTTP 方法。一个可以改进的地方是错误处理不足。例如,代码假设响应的文件内容始终是字符串,如果出现错误,则可能不是这样。另一个潜在的担忧是,此类在某些情况下可能过于简单。它不提供自定义响应中发送的 HTTP 状态码的功能,设置 cookies 或处理重定向等。总的来说,这段代码以轻量级的方式在 PHP 中执行简单的 HTTP 请求,但可能不适合更复杂的情况。
需求
- PHP >= 8.0
- PHPUnit >= 9.3
安装
composer require myth21/context-http-requester:dev-main
用法
获取实体列表
$contextHttpRequester = new ContextHttpRequester();
$contextHttpRequester->sendGetRequest('http://example.com/comments/');
创建实体
$contextHttpRequester->sendPostRequest('http://example.com/comments/', [
'id' => null,
'name' => 'Bob',
'text' => 'Hello, World',
]);
更新实体
$contextHttpRequester->sendPutRequest('http://example.com/comments/123/', [
'name' => 'Alice',
'text' => 'Hi, everyone',
]);
测试
需要 phpunit。
可选:您可以从 comment_server.php 目录运行服务器进行测试,通过命令
php -S localhost:8000 -f comment_server.php
运行测试,示例
php vendor/bin/phpunit vendor/myth21/context-http-requester/CommentClientTest.php -c vendor/myth21/context-http-requester/example.phpunit.xml --color --do-not-cache-result