php_modules/request-input

PHP REST API 的 HTTP 请求输入/体解析器。

1.0.1 2021-07-12 14:23 UTC

This package is auto-updated.

Last update: 2024-09-22 22:06:28 UTC


README

PHP REST API 的 HTTP 请求输入/体解析器。

这应该用作 REST API 中 HTTP 请求的体解析器;

假设 HTTP 请求可以通过不同的格式(如:XML、JSON、YAML 等)发送一些信息;Request Input 接受上述所有格式,并且可以通过创建自定义解析器进行补充。

安装

  • 从提示命令行 [cmd]
composer require php_modules/request-input
  • composer.json
{
  "require": {
    "php_modules/request-input": "^1.0.1"
  }
}

使用

不使用 php-module

use Sammy\Packs\RequestInput;

$request = new RequestInput;

$body = $request->getRequestInput();

使用 php-module

$request = requires ('request-input');

$body = $request->getRequestInput();

'$body' 变量应根据请求体进行评估。

以下是 requestInput 支持的数据类型匹配列表。

JSON

{
  "user": {
    "name": "Foo",
    "email": "foo@bar",
    "site": "foobar.baz"
  }
}

YAML

user:
  name: Foo
  email: foo@bar
  size: foobar.baz

XML

<user>
  <name>Foo</name>
  <email>foo@bar</email>
  <site>foobar.baz</site>
</user>

以下任一请求体都应根据使用类型发送一个头;因此 RequestInput 可能会解析发送的请求体,以便在 PHP 中使用。

像 @Samils 这样的框架应自动解析它,并提供请求体作为 '$request' 对象的属性。

在 @Samils 控制器中使用它应如下所示

namespace Application\Controller;

class SomeController extends SamiController {
  public function someAction () {
    # $requestBody = params;
    $user = params['user'];  
  }
}

因此,使用 RequestInput 的基本方法应帮助您解析发送到 REST API 的任何请求体。

...