qandidate / toggle-api
为您的开关提供API接口。
1.0.1
2022-06-27 09:17 UTC
Requires
- php: >=7.2
- ext-json: *
- asm89/stack-cors: ^2.0
- predis/predis: ^1.1||^2.0
- qandidate/toggle: ^2.0
- qandidate/toggle-bundle: ^1.4.1
- symfony/dependency-injection: ^5.2
- symfony/dotenv: ^5.2
- symfony/framework-bundle: ^5.2
- symfony/http-foundation: ^5.2
- symfony/http-kernel: ^5.2
- symfony/security-bundle: ^5.2
Requires (Dev)
- broadway/coding-standard: ^1.2
- phpstan/phpstan: ^1.0
- phpunit/phpunit: ^8.0
- symfony/browser-kit: ^5.2
This package is auto-updated.
Last update: 2024-09-05 00:11:55 UTC
README
一个用于管理开关的API,使用Redis存储开关集合。
关于
在以下链接阅读关于此仓库的博客系列文章:
- http://labs.qandidate.com/blog/2014/08/18/a-new-feature-toggling-library-for-php/
- http://labs.qandidate.com/blog/2014/08/19/open-sourcing-our-feature-toggle-api-and-ui/
安装
使用composer安装依赖
make dependencies
配置基于环境变量确定。请查看.env.*
文件。您可以用环境值覆盖文件中的值。默认配置主要用于本地开发。
环境变量TOGGLE__ALLOWED_ORIGINS
应该是有效的JSON。这是为了允许数组。
运行测试
我们使用PHPUnit,所以运行测试只需运行
docker-compose up -d
make test
运行应用程序
使用您喜欢的Web服务器(或使用php -S 127.0.0.1:1337 -t public
进行本地测试),将文档根目录指向public
文件夹。
端点
检索开关
GET /toggles
创建或更新一个开关
PUT /toggles/{name}
示例请求
{
"conditions" : [
{
"name" : "operator-condition",
"operator" : {
"name" : "less-than",
"value" : "1337"
},
"key" : "user_id"
}
],
"name" : "foo",
"status" : "conditionally-active",
"originalName" : "foo"
}
注意:PUT不会删除重命名的先前开关。所以如果您想将foo重命名为bar,您需要先PUT
bar,然后DELETE
foo。
删除一个开关
DELETE /toggles/{name}
许可证
MIT,请参阅LICENSE。