allestuetsmerweh / php-typescript-api
使用PHP和TypeScript构建类型化Web API
2.5.0
2024-05-27 20:53 UTC
Requires
- php: >=8.2
- monolog/monolog: >=3.2
- psr/log: >=3.0
- symfony/http-foundation: >=6.1
Requires (Dev)
- friendsofphp/php-cs-fixer: >=3.4
- phpstan/phpstan: ^1.11
- phpunit/phpunit: >=9
README
使用PHP和TypeScript构建类型化Web API
免责声明:这不是一个官方支持的谷歌产品
此项目
- 通过提供定义允许的请求/响应类型的字段,帮助在服务器端进行数据验证。
- 生成TypeScript类型的API客户端。
- 由一个服务器(PHP)库,一个客户端(TypeScript)库,以及使用示例组成。
用法
服务器端(PHP)
-
使用composer安装php-typescript-api
composer require allestuetsmerweh/php-typescript-api
-
为您的API实现一些端点(示例)。
-
定义您的API包含哪些端点(示例)。
-
定义如何生成您的API的TypeScript接口(示例)。
-
运行该脚本以生成TypeScript接口文件:
php path/to/your/generate.php
(《示例结果》) -
您可能希望当启动本地开发服务器时自动运行此脚本,并在CI管道中检查提交的TypeScript接口文件是否是最新的。
-
-
有一个公开可访问的PHP脚本提供API服务(《示例》)。
客户端(TypeScript)
-
使用npm安装php-typescript-api
npm install --save php-typescript-api
-
配置您的API客户端(《示例》)。
-
使用您的API客户端进行请求(《示例》)。
贡献
构建
- 服务器:(无需构建)
- 客户端:
npm run build
运行测试
- 服务器:
composer test
- 客户端:
npm test
代码检查
- 服务器:
composer fix
- 客户端:
npm run lint