coderscantina/laravel-transform-requests

一个表单请求包装器,用于对传入的请求应用转换

v1.0.0 2023-07-22 19:59 UTC

This package is auto-updated.

Last update: 2024-09-23 13:15:27 UTC


README

一个表单请求包装器,用于对传入的请求应用转换

特性

  • 使用 TransformRequest 指定一组键替换
  • 使用 ApiRequest 将所有输入从 camelCase 转换为 snake_case

入门

  • 安装此包

安装

使用 composer 需要此包

$ composer require coderscantina/laravel-transform-requests

用法

定义一个新的 ApiRequest

<?php namespace App;
 
use Neon\Request\ApiRequest;
 
class TestApiRequest extends ApiRequest
{

}

定义一个新的 TransformRequest

  • 重写 $transform 字段以定义您的转换
  • 为了进一步自定义转换,重写 getTransform
<?php namespace App;
 
use Neon\Request\TransformRequest;
 
class TestTransformRequest extends TransformRequest
{
    protected $transform = [
        'foo_bar' => 'fooBar',
    ];

}

在您的应用程序中,像使用任何其他请求一样使用请求

curl -X POST -d '{"fooBar": "baz"}' https:///
<?php

class TestController extends \Illuminate\Routing\Controller
{
    public function a(TestTransformRequest $request)
    {
        $request->get('foo_bar'); // 'baz'
        $request->all(); // -> ['foo_bar' => 'baz']
    }
    
    public function b(TestApiRequest $request)
    {
        $request->get('foo_bar'); // 'baz'
        $request->all(); // -> ['foo_bar' => 'baz']
    }
}

测试

$ composer test