basemaster / wellrested
用于简单的PHP库,支持RESTful API(wellrested.org)的克隆
v5.1.1.2
2022-07-29 06:51 UTC
Requires
- php: >=7.2
- psr/http-factory: ~1.0
- psr/http-message: ~1.0
- psr/http-server-handler: ~1.0
- psr/http-server-middleware: ~1.0
Provides
- dev-master
- v5.1.1.2
- v5.1.1.1
- v5.0.1.1
- v5.0.1
- v5.0.0
- v4.0.5
- v4.0.5-RC2
- v4.0.5-RC1
- v4.0.4
- v4.0.3
- v4.0.2
- v4.0.1
- v4.0.0
- v4.0.0-RC4
- v4.0.0-RC3
- v4.0.0-RC2
- v4.0.0-RC
- v3.1.0
- v3.0.6
- v3.0.5
- v3.0.4
- v3.0.3
- v3.0.2
- v3.0.1
- v3.0.0
- v3.0.0-beta3
- v3.0.0-beta2
- v3.0.0-beta
- v2.3.0
- v2.3.0-alpha
- v2.2.1
- v2.2.0
- v2.1.0
- v2.0.3
- v2.0.2
- v2.0.1
- v2.0.0
- v1.4.1
- v1.4.0
- v1.3.1
- v1.3.0
- v1.2.2
- v1.2.1
- v1.2.0
- v1.1.2
- v1.1.1
- v1.1.0
- v1.0.0
- dev-fix-extra-leading-slash-in-path
This package is not auto-updated.
Last update: 2024-09-20 16:31:55 UTC
README
WellRESTed 是一个用于创建PHP中的RESTful API和网站的库,它提供了HTTP消息的抽象、强大的处理器和中间件系统,以及灵活的路由器。
此分支(basemaster/wellrested)回归到php 7.2版本。
特性
- 使用 PSR-7 接口处理请求、响应和流。这使您能够无缝地与其他PSR-7兼容的库一起使用WellRESTed。
- 使用 PSR-15 接口处理处理器和中间件,以允许代码的共享和重用
- 路由器允许您使用变量(如
/foo/{bar}/{baz}
)匹配路径。 - 中间件系统提供了一种方法,可以将应用程序从离散的模块化组件中组合而成。
- 按需加载的处理器和中间件只有在需要时才会实例化。
安装
将 "wellrested/wellrested" 添加到您的 composer.json 文件的 require
属性中。
{ "require": { "wellrested/wellrested": "^5" } }
文档
查看文档以开始。
示例
<?php use Psr\Http\Message\ResponseInterface; use Psr\Http\Message\ServerRequestInterface; use Psr\Http\Server\RequestHandlerInterface; use WellRESTed\Message\Response; use WellRESTed\Message\Stream; use WellRESTed\Server; // Create a handler using the PSR-15 RequestHandlerInterface class HomePageHandler implements RequestHandlerInterface { public function handle(ServerRequestInterface $request): ResponseInterface { // Create and return new Response object to return with status code, // headers, and body. $response = (new Response(200)) ->withHeader('Content-type', 'text/html') ->withBody(new Stream('<h1>Hello, world!</h1>')); return $response; } } // ----------------------------------------------------------------------------- // Create a new Server instance. $server = new Server(); // Add a router to the server to map methods and endpoints to handlers. $router = $server->createRouter(); // Register the route GET / with an anonymous function that provides a handler. $router->register("GET", "/", function () { return new HomePageHandler(); }); // Add the router to the server. $server->add($router); // Read the request from the client, dispatch a handler, and output. $server->respond();
开发
使用Docker运行单元测试、管理Composer依赖项,并预览文档网站。
要开始,请运行
docker-compose build docker-compose run --rm php composer install
使用 php
服务运行PHPUnit测试
docker-compose run --rm php phpunit
使用Psalm进行静态分析
docker-compose run --rm php psalm
使用PHP Coding Standards Fixer
docker-compose run --rm php php-cs-fixer fix
使用 docs
服务生成文档
# Generate docker-compose run --rm docs # Clean docker-compose run --rm docs make clean -C docs
要运行本地游乐场网站,请使用
docker-compose up -d
该命令将在 http://localhost:8080 上运行网站。您可以使用此网站浏览 文档 或 代码覆盖率报告。
版权和许可
版权 © 2020 by PJ Dietz。在MIT许可下许可。