teners / laravel-key-case
Laravel应用程序中请求和响应数据键自动大小写转换的中间件。
v1.1.2
2024-06-25 10:15 UTC
Requires (Dev)
- orchestra/testbench: ^6.23|^7.0|^8.0|^9.0
- phpunit/phpunit: ^9.4|^10.1|^11.1
README
一个用于转换请求和响应数据键的Laravel包。
为什么?
在JavaScript和大多数前端技术中,通常使用驼峰式命名法,而在PHP(后端)中使用蛇形命名法,这个包可以轻松实现这一点,您可以在Laravel中像喜欢一样处理数据列,并且您的响应或请求数据将自动转换为任何大小写。
安装
在终端中运行以下命令安装Laravel Key Case
composer require teners/laravel-key-case
发布包配置文件
php artisan vendor:publish --provider="Teners\LaravelKeyCase\LaravelKeyCaseServiceProvider" --tag="key-case-config"
然后您可以自定义每个请求和响应数据使用的大小写。
使用中间件
此包包含两个中间件
TransformResponseMiddleware:转换响应数据键。TransformRequestMiddleware:转换请求数据键。
您可以在应用程序的其他地方通过注册它们的别名(或如果您通过API使用它们,直接在API路由组中使用它们)来轻松引用它们
在Laravel 11中,打开/bootstrap/app.php并在其中注册它们
->withMiddleware(function (Middleware $middleware) { $middleware->api(append: [ \Teners\LaravelKeyCase\Http\Middleware\TransformResponseMiddleware:class, ]); }) // Or to use on individual routes ->withMiddleware(function (Middleware $middleware) { $middleware->alias([ 'convert-response-key' => \Teners\LaravelKeyCase\Http\Middleware\TransformResponseMiddleware:class, ]); })
在Laravel 9和10中,您可以在/app/Http/Kernel.php中添加它们
protected $middlewareGroups = [ 'web' => [ ... ], 'api' => [ ... TransformResponseMiddleware::class, ], ]; // Or to use on individual routes // Laravel 9 uses $routeMiddleware = [ //protected $routeMiddleware = [ // Laravel 10+ uses $middlewareAliases = [ protected $middlewareAliases = [ // ... 'convert-response-key' => \Teners\LaravelKeyCase\Http\Middleware\TransformResponseMiddleware:class, ];
忽略路由
您可以在配置文件中指定要忽略请求和响应转换的路由
return [ // Other configuration options... 'ignore' => [ // Common routes to ignore for both request and response transformation ], 'ignoreRequest' => [ // List of routes to ignore for request transformation ], 'ignoreResponse' => [ // List of routes to ignore for response transformation ], ];
在ignore中列出的路由将不会对请求和响应进行转换,而在ignoreRequest中列出的路由将不会对请求进行转换,而在ignoreResponse中列出的路由将忽略响应转换。
贡献
通过Github上的拉取请求进行贡献是welcome。
- 请在README.md中记录您所做的任何更改(如有必要)。
- 请为每个功能/修复只提交一个拉取请求。
问题
请通过Github Issues标签报告您在使用包时遇到的问题。
测试
要运行测试,请使用
composer test
鸣谢
贡献者
贡献者列表将在此处添加
许可协议
MIT许可协议(MIT)。请参阅许可文件以获取更多信息。