【问题标题】:Php PSR-7 response, get file mime-typePhp PSR-7 响应,获取文件 mime-type
【发布时间】:2017-09-13 18:18:12
【问题描述】:

我有一个$response 变量,它实现了Psr\Http\Message\ResponseInterface

它包含有关下载文件的信息。如何获取此文件的 mime-type?

【问题讨论】:

标签: php http http-headers mime-types psr-7


【解决方案1】:

由于ResponseInterface 扩展了MessageInterface,您可以使用getHeader($name)getHeaderLine($name) 方法来检索Content-Type 响应标头的值。比如……

$mimeType = $response->getHeaderLine('Content-Type');

注意:我使用了getHeaderLine,因为Content-Type 标头不太可能包含多个值,这样您就可以将返回值视为单项数组。

【讨论】:

  • 你说不太可能,而我一直得到诸如application/json;charset=UTF-8 之类的内容类型。 Guzzle 实现中的getHeader() 方法并没有像我预期的那样将其分成两部分。 PSR-7 是否应该能够处理那个额外的“字符集”部分,还是由应用程序来做?
  • @Jason 仍然只有一个标题。 HTTP 标头的问题是它们可能会以不同的值重复,因此健壮的实现将始终为每个标头名称提供一组值
猜你喜欢
  • 1970-01-01
  • 2016-02-24
  • 1970-01-01
  • 2017-01-24
  • 2013-07-29
  • 2016-08-22
  • 2015-12-01
  • 2014-01-28
  • 2016-05-19
相关资源
最近更新 更多