dormilich / http-client-bundle

dormilich/http-client 的 Symfony 5 扩展包。

安装: 3

依赖: 0

建议: 0

安全: 0

星标: 0

关注者: 1

分支: 0

开放问题: 0

类型:symfony-bundle

dev-main 2021-08-13 13:54 UTC

This package is auto-updated.

Last update: 2024-09-13 20:20:26 UTC


README

dormilich/http-client 的 Symfony 5 扩展包。

安装

此扩展包需要 Symfony 5 以及 PSR-17 和 PSR-18 的实现。

然而,在 Symfony 项目中使用 symfony/http-client 作为 PSR-18 实现是有意义的。

您可以通过 composer 安装此扩展包

composer require dormilich/http-client-bundle

配置

配置允许设置预定义的 JSON-和 URL-transformers。默认情况下,JSON-transformers 不带选项设置,而 URL-transformers 使用 php 策略。

JSON-编码器/解码器接受 JSON_* 常量作为构造函数参数。它们可以通过 encoder.json/decoder.json 键添加。

URL-编码器/解码器可以通过 php(原生 PHP 解析策略,用于填充 $_GET$_POST)和 nvp(使用 name=value 对的策略)使用 encoder.url/decoder.url 键进行配置。

示例

# config/packages/dormilich_http_client.yaml
dormilich_http_client:
  encoder:
    url: php
  decoder:
    json: !php/const JSON_OBJECT_AS_ARRAY

标签

该扩展包允许使用服务标签在 services.yaml 中配置 HTTP 客户端。

  • dormilich_http_client.client_decoder:向客户端添加标记解码器
  • dormilich_http_client.client_encoder:向客户端添加标记编码器
  • dormilich_http_client.client_transformer:向客户端添加标记数据转换器/编码器/解码器

示例

# add error decoder to every client instance
Dormilich\HttpClient\Decoder\ErrorDecoder:
  tags:
    - dormilich_http_client.client_decoder
# encode JSON objects
Dormilich\HttpClient\Transformer\JsonEncoder:
    tags:
        - dormilich_http_client.client_transformer