ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
### 3.3 `Psr\Http\Message\ResponseInterface` ~~~php <?php namespace Psr\Http\Message; /** * 表示服务器返回的响应消息。 * * 根据 HTTP 规范,此接口包含以下各项的属性: * * - 协议版本 * - 状态码和原因短语 * - 报头 * - 消息体 * * HTTP 响应是被视为无法修改的,所有能修改状态的方法,都 **必须** 有一套机制,在内部保 * 持好原有的内容,然后把修改状态后的,新的 HTTP 响应实例返回。 */ interface ResponseInterface extends MessageInterface { /** * 获取响应状态码。 * * 状态码是一个三位整数,用于理解请求。 * * @return int 状态码。 */ public function getStatusCode(); /** * 返回具有指定状态码和原因短语(可选)的实例。 * * 如果未指定原因短语,实现代码 **可能** 选择 RFC7231 或 IANA 为状态码推荐的原因短语。 * * 此方法在实现的时候,**必须** 保留原有的不可修改的 HTTP 消息实例,然后返回 * 一个新的修改过的 HTTP 消息实例。 * * @see http://tools.ietf.org/html/rfc7231#section-6 * @see http://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml * @param int $code 三位整数的状态码。 * @param string $reasonPhrase 为状态码提供的原因短语;如果未提供,实现代码可以使用 HTTP 规范建议的默认代码。 * @return self * @throws \InvalidArgumentException 如果传入无效的状态码,则抛出。 */ public function withStatus($code, $reasonPhrase = ''); /** * 获取与响应状态码关联的响应原因短语。 * * 因为原因短语不是响应状态行中的必需元素,所以原因短语 **可能** 是空。 * 实现代码可以选择返回响应的状态代码的默认 RFC 7231 推荐原因短语(或 IANA HTTP 状态码注册表中列出的原因短语)。 * * @see http://tools.ietf.org/html/rfc7231#section-6 * @see http://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml * @return string 原因短语;如果不存在,则 **必须** 返回空字符串。 */ public function getReasonPhrase(); } ~~~