从 Laravel 发送自定义 500 http 响应
Posted
技术标签:
【中文标题】从 Laravel 发送自定义 500 http 响应【英文标题】:Send custom 500 http response from Laravel 【发布时间】:2019-05-01 11:05:48 【问题描述】:我想发送一个状态为 500 的自定义 http 响应。 尝试了以下代码,但它返回的状态为 200。
return response()
->json([
'code' => 500,
'message' => 'custom error'
], 500);
如何从 laravel 控制器发送 http 状态 500?
【问题讨论】:
Laravel - Return json along with http status code的可能重复 我认为你在这里遗漏了一些东西(你的代码工作正常) 【参考方案1】:试试这个。
return abort(500, 'custom error');
更多信息:
https://laravel.com/docs/5.7/errors#http-exceptions
希望对你有帮助
更新
那就试试这个
return response()->json(['message' => 'error message'], 500);
这将发送 500 状态码而不是 200
更多信息:
https://laravel.com/api/5.7/Illuminate/Contracts/Routing/ResponseFactory.html#method_json
希望对您有所帮助。
【讨论】:
AFAIK,abort
实际上呈现刀片模板,而不是 JSON,这对 OP 有用吗?
我相信你需要调用response
作为一个函数:return response()->...
以上是关于从 Laravel 发送自定义 500 http 响应的主要内容,如果未能解决你的问题,请参考以下文章
使用SwiftMessage从回复电子邮件中获取Laravel中的自定义标头
使用 smtp 服务器发送自定义电子邮件地址时 Laravel 错误