http_client或者使用自动装配别名HttpClientInterface

此服务可以使用framework.http_client.default_options

  • YAML
  • XML
  • PHP
  • 独立使用
1 2 3 4 5 6 7 8
#配置/包/ framework.yaml框架:#……http_client:max_host_connections:10default_options:标题:“X-Powered-By”:“ACME应用”max_redirects:7

可以定义多个预先配置的HTTP客户端服务,每个服务名称定义为下的一个键scoped_clients.对象定义的默认选项http_client服务。你可以覆盖这些选项,也可以定义其他一些选项:

  • YAML
  • XML
  • PHP
  • 独立使用
1 2 3 4 5 6 7 8
#配置/包/ framework.yaml框架:#……http_client:scoped_clients:my_api.client:auth_bearer:secret_bearer_token#……

为有作用域的客户端定义的选项仅应用于与它们匹配的urlbase_uri或者是范围选项。不匹配的url总是使用默认选项。

每个限定作用域的客户端还定义了一个相应的已命名的自动装配别名。举个例子ob娱乐下载Symfony \ \ HttpClient \ HttpClientInterface myApiClient美元的合同作为参数的类型和名称,自动装配将注入my_api.client服务到自动连接的类中。

通过启用可选的retry_failed配置后,HTTP客户端服务将自动重试失败的HTTP请求。

12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
#配置/包/ framework.yaml框架:#……http_client:#……default_options:retry_failed:# retry_strategy: app.custom_strategyhttp_codes:0:(“得到”,“头”如果请求方法为GET或HEAD,则重试网络错误429:真正的#重试所有状态码为429的响应500:(“得到”,“头”max_retries:2延迟:1000乘数:3.max_delay:5000抖动:0.3scoped_clients:my_api.client:#……retry_failed:max_retries:4

5.2

retry_failed选项在Symfony 5.2中引入。ob娱乐下载

字符串

用于创建的用户名和密码授权类中使用的HTTP头微软NTLM认证协议.该选项的取值必须遵循如下格式用户名:密码.这种身份验证机制需要使用基于curl的传输。

字符串

属性中解释的规则,被合并为相对URI的URIRFC 3986标准。当你发出的所有请求都有一个共同的前缀(例如。https://api.github.com/),这样你就可以避免把它添加到每个请求中。

这里有一些常见的例子base_uri合并在实践中的工作:

数组默认的DEFAULT_RETRY_STATUS_CODES ()

5.2

http_codes选项在Symfony 5.2中引入。ob娱乐下载

触发请求重试的HTTP状态代码列表。

字符串

控件的文件的路径PEM格式HTTP客户端使用的证书。这通常与local_pk而且密码选项。

字符串

属性的文件的路径PEM格式属性中定义的证书的私钥local_cert选择。

数组默认的[]

此设置用于关联其他请求格式(例如。超文本标记语言)到一个或多个mime类型(例如:text / html),它将允许你使用format & mime类型来调用要求::getFormat (mimeType美元)要求::getMimeType(格式)

在实践中,这很重要,因为Symfony使用它来自动设置ob娱乐下载内容类型标头上的响应(如果您没有显式地设置一个)。如果您传递一个mime类型数组,第一个将用于头。

配置jsonp格式:

  • YAML
  • XML
  • PHP
1 2 3 4 5
#配置/包/ framework.yaml框架:要求:格式:jsonp:“应用程序/ javascript”

混合默认的真正的

确定路由生成器行为。当生成路由时,具有特定的参数需求,在使用的参数不满足这些要求的情况下,发电机可以表现不同。

取值为:

真正的
当需求未被满足时抛出异常;
当不满足要求时禁用异常并返回相反;
禁用检查需求(因此,即使需求不匹配,也要匹配路由)。

真正的建议在开发环境中使用,而在生产中可能是首选。

布尔默认的

5.1

自Symfony 5.1以来,不设置此选项已弃用。ob娱乐下载该选项的默认值将变为真正的在Syob娱乐下载mfony 6.0中。

当此选项设置为真正的的正则表达式路由参数要求将使用utf - 8修饰符.例如,这将在使用时匹配任何UTF-8字符,而不是只匹配一个字节。

如果应用程序的字符集是UTF-8(如getCharset()方法您的内核),建议将其设置为真正的.这将使非utf8 url产生404错误。