Lumen 确实发送 204 响应

Posted

技术标签:

【中文标题】Lumen 确实发送 204 响应【英文标题】:Lumen does send 204 response 【发布时间】:2018-01-19 05:15:44 【问题描述】:

我在主控制器中创建了以下函数。

public function noContent() : JsonResponse

    return response()->json([], Response:HTTP_NO_CONTENT);

删除一些数据时,我正在返回上述函数,但我收到一条消息“无法得到任何响应”。

我也尝试在数组中传递一条消息(即使不建议将其用于 204),但仍然收到相同的错误。我正在使用相同的函数返回 200 或 404 条消息,并且按预期工作。

是否有其他解决方案可以完成这项工作?

【问题讨论】:

也许您正在发送Content-Type 标头? Some clients behave badly with that combination. 我正在发送一个内容类型的标头,我已将其删除但仍然得到相同的结果。 你可以试试return response(null, Response:HTTP_NO_CONTENT);。如果您的意图是不返回响应中的任何内容,请从方法签名中删除返回类型 非常感谢,这对我有用! 【参考方案1】:

你应该这样做:

return response('', 204);

【讨论】:

以上是关于Lumen 确实发送 204 响应的主要内容,如果未能解决你的问题,请参考以下文章

如何正确覆盖 `Illuminate\Routing\Router::toResponse` 以便为空响应发送 HTTP 状态代码 204?

如何在 Laravel Lumen 8 中设置响应的 cookie

ATSHA204加密芯片介绍

如何在 Laravel/Lumen 中捕获 401 响应?

Lumen 5.7 JSON 响应限制

如何将自定义方法添加到 Lumen 的响应类