localheinz / http-method
Requires
- php: ~8.1.0 || ~8.2.0 || ~8.3.0
Requires (Dev)
- ergebnis/composer-normalize: ^2.39.0
- ergebnis/license: ^2.3.0
- ergebnis/php-cs-fixer-config: ^6.12.0
- ergebnis/phpunit-slow-test-detector: ^2.4.0
- phpunit/phpunit: ^10.4.2
- psalm/plugin-phpunit: ~0.18.4
- rector/rector: ~0.18.11
- vimeo/psalm: ^5.16.0
README
本项目提供带有HTTP请求方法常量的composer
软件包。
动机
一些PHP框架和软件包提供了自己的HTTP请求和响应对象抽象。其中一些提供了HTTP请求方法名和HTTP响应状态码的常量,以便开发者可以使用命名常量而不是魔术数字或魔术字符串来引用它们。
- HTTP请求方法名
- HTTP响应状态码
这样,开发者可以引用这些常量。
以下是一些提供HTTP请求方法常量的HTTP请求抽象示例:
以下是一些提供HTTP响应状态码常量的HTTP响应抽象示例:
以下是一些提供HTTP请求方法名和HTTP响应状态码常量的接口示例:
然而,开发者可能会使用一个既不提供任何常量,或者只提供特定情况下所需常量子集的抽象。
优秀的库teapot/status-code
已经提供了由RFC标准化的HTTP状态码,以及一系列供应商特定的HTTP状态码。
以类似的方式,这个库旨在提供一组接口,其中包含由RFC标准化的HTTP请求方法的常量,以及额外的供应商特定HTTP请求方法。
安装
运行
composer require ergebnis/http-method
用法
接口Ergebnis\Http\Method
为以下由RFC标准化的所有HTTP请求方法提供常量
具体来说
CONNECT
DELETE
GET
HEAD
OPTIONS
PATCH
POST
PUT
TRACE
接口Ergebnis\Http\Method\WebDav
为以下由RFC标准化的所有HTTP请求方法提供常量
具体来说
ACL
BIND
CONNECT
COPY
DELETE
GET
HEAD
LOCK
MKCALENDAR
MKCOL
MKREDIRECTREF
MOVE
OPTIONS
ORDERPATCH
PATCH
POST
PROPFIND
PROPPATCH
PUT
REBIND
SEARCH
TRACE
UNBIND
UNLOCK
UPDATEREDIRECTREF
接口Ergebnis\Http\Method\Vendor\SquidCache
为以下用于从缓存中清除项的HTTP请求方法提供常量
PURGE
接口 Ergebnis\Http\Method\Vendor\VarnishCache
提供了用于从缓存中失效和清除条目的建议 HTTP 请求方法的常量,即
BAN
PURGE
要使用这些常量,导入接口并引用常量,而不是使用魔法字符串
<?php declare(strict_types=1); use Ergebnis\Http\Method; use Psr\Http\Client; use Psr\Http\Message; /** @var Message\RequestFactoryInterface $requestFactory */ $request = $requestFactory->create( Method::GET, 'https://localheinz.com/articles/' ); /** @var Client\ClientInterface $httpClient */ $httpClient->sendRequest($request);
💡 如果您了解任何其他在野外使用的 HTTP 方法,无论是标准化的还是供应商特定的,请告知我!
变更日志
此项目的维护者记录了对此项目的重大更改,记录在 变更日志 中。
贡献
此项目的维护者建议遵循 贡献指南。
行为准则
此项目的维护者要求贡献者遵守 行为准则。
一般支持政策
此项目的维护者提供有限支持。
您可以通过 赞助 @localheinz 或 为此项目相关的服务请求发票 来支持此项目的维护。
PHP 版本支持政策
此项目支持具有 活动和安全支持 的 PHP 版本。
此项目的维护者在 PHP 版本最初发布后添加对该版本的支持,并在该版本达到安全支持结束时停止对该版本的支持。
安全策略
此项目有一个 安全策略。
许可证
此项目使用 MIT 许可证。
社交
在 Twitter 上关注 @localheinz 和 @ergebnis。