cleantalk / http
CleanTalk HTTP 请求库
1.0.0
2022-10-19 07:05 UTC
Requires
This package is auto-updated.
Last update: 2024-09-19 11:26:49 UTC
README
Cleantalk HTTP 请求
独立的 PHP HTTP 请求库
描述
此独立库允许您轻松地使用不同的 HTTP 请求。它可以简单地合并到您的项目中。请参阅“用法”以了解更多信息。
功能
- POST、GET HTTP 方法。
- 多请求。
- 异步请求。
- 回调函数。
- 支持 CURL 选项。
- 上述功能的任意组合。
用法
通过使用 PSR-0(自动加载)或直接使用“include”指令将文件包含到您的项目中下载。使用以下代码使用请求
$request = new Cleantalk\Common\HTTP\Request();
$request_result = $request
->setUrl('example.com')
->setData(['foo' => 'bar']])
->setPresets(['async', 'ssl']))
->request();
您可以使用已创建的对象,更改其 URL 和回调函数,任何时间都可以
$another_request_result = $request
->setUrl($new_url)
->setCallback(
function ($response_content, $requested_url){
$processed_response_content = strreplace(
'Hello',
'Hey!',
$response_content
);
return $processed_response_content;
})
->request();
或使用多个异步请求。此请求将向 example.com 和 exapme2.com 发送异步请求,使用自定义用户代理,并将响应直接传递到输出缓冲区
$miltiple_request = new Cleantalk\Common\HTTP\Request();
$multiple_request_result = $request
->setUrl(['example.com', 'example2.com'])
->setData(['foo' => 'bar']])
->setPresets(['async']))
->setOptions([
CURLOPT_RETURNTRANSFER => fase, // CURL format is supported
'user-agent' => 'My custom User-Agent' // And user-friendly
])
->request();
预设
库使用预设,允许您配置其行为。使用 'setPresets()' 方法来设置它们。
->setPresets([
'async',
'get',
'dont_follow_redirects'
])
可以使用以下预设(您可以根据需要以任何方式组合它们)
- dont_follow_redirects - 忽略 300 系列 HTTP 响应代码,并不要遵循重定向
- get_code - 仅获取 HTTP 响应代码
- async - 异步请求。发送请求并返回 'true' 值。不等待响应。
- get - 使用 GET 类型的请求而不是默认的 POST 类型
- ssl - 使用 SSL
- cache - 允许此请求缓存
- retry_with_socket - 如果 cURL 无法检索数据,则使用套接字再次请求
选项
如果您需要精确调整,则可以使用 'setOptions' 方法。
->setOptions([
CURLOPT_RETURNTRANSFER => fase, // CURL format is supported
'user-agent' => 'My custom User-Agent' // And user-friendly
])
它支持任何 cURL 类型选项(更多详情请参阅 cURL 文档)和以下人性化的选项
- timeout - 最大连接持续时间(整数)
- sslverify - 验证主机(布尔值)
- sslcertificates - 提供您自己的 SSL 证书(字符串)
- headers - 任何自定义头(字符串数组)
- user-agent - 自定义用户代理(字符串)
许可
此库是开源软件,根据 GPLv3 许可证授权。