communitycart/web-tools

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

0.2 2014-03-25 10:02 UTC

This package is not auto-updated.

Last update: 2024-09-29 05:08:08 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文件。