headzoo/web-tools

此包已被放弃,不再维护。没有建议的替代包。

一组用于创建和处理Web请求的PHP类。

0.2 2014-03-25 10:02 UTC

This package is not auto-updated.

Last update: 2022-02-01 12:33:13 UTC


README

一组用于创建Web请求和解析与HTTP协议相关的信息的PHP类。

概览

此库包含可以用于执行以下任务的类

  • 向远程服务器发送GET/POST请求。
  • 解析和构建原始HTTP头部。
  • 解析原始HTTP请求。
  • 提供一个非常小的用PHP编写的Web服务器,用于测试目的。

要求

安装

可以使用git或Composer安装此库,但强烈建议使用Composer,以便自动安装依赖项。使用以下代码将web-tools依赖项添加到您的composer.json中

"require": {
    "headzoo/web-tools" : "dev-master"
}

快速开始

<?php
use Headzoo\Web\Tools\WebClient;
use Headzoo\Web\Tools\HttpMethods;

// Make a simple GET request.
$web = new WebClient();
$response = $web->get("http://headzoo.io");

// Make a simple POST request.
$web = new WebClient();
$response = $web->post("http://headzoo.io", ["arg1" => "value1"]);

// The response is an instance of WebResponse, which provides the response information.
echo $response->getCode();
echo $response->getBody();
print_r($response->getHeaders());

// Making a requests with more configuration.
$web = new WebClient(HttpMethods::GET);
$web
    ->addHeader("Content-Type", "application/json")
    ->setUserAgent("My-Web-Client")
    ->setBasicAuth("headzoo", "password");
$response = $web->request("http://headzoo.io");

类文档

此README仅简要讨论了库中的重要一些类。有关更多信息,请参阅类的源代码。

Headzoo\Web\Tools\WebClient

用于发送任何类型的HTTP请求,包括GET、POST、PUT和DELETE。

Headzoo\Web\Tools\WebResponse

表示HTTP请求的服务器响应。

Headzoo\Web\Tools\WebServer

一个小型、尚未完成的测试Web服务器。

Headzoo\Web\Tools\WebRequest

表示传入的Web请求。

Headzoo\Web\Tools\Builders\Headers

标准化和构建原始HTTP头部。

Headzoo\Web\Tools\Parsers\Headers

将原始HTTP头部解析为键/值对的数组。

Headzoo\Web\Tools\Parsers\Request

将原始HTTP请求解析为正文、头部等。

Headzoo\Web\Tools\HttpMethods

表示支持请求方法的常量类。

Headzoo\Web\Tools\Utils

包含库中使用的各种实用方法。

变更日志

v0.2 - 2013-12-31
  • 主要重构。
v0.1 - 2013-12-18
  • 发布代码,采用MIT许可。

待办事项

  • 添加Cookie管理。
  • 添加证书管理。

许可

本内容采用MIT许可发布。更多信息请参阅所包含的LICENSE文件。