我有一个Laravel API,可以向客户端返回JSON响应。默认情况下,Laravel以标准格式发送错误消息,例如422 Unprocessable Entity。但是,我希望以特定格式向客户端发送自定义错误消息,例如:
422 Unprocessable Entity
{ "status": "error", "message": "Invalid email address" }
我已经尝试使用带有自定义状态代码和消息的abort函数,但这不会以所需的格式发送响应。如何以上述格式向客户端发送自定义错误消息?
oaxa6hgo1#
有很多可能的解决方案。以this为例。您可以创建自己的验证器,或者只是扩展Laravel中构建的现有验证器。此外,还可以返回您需要的任何其他内容,例如:
return response()->json(['status' => 'error', 'message' => 'Your message here'], 422);
但如果您需要它进行验证,我会推荐前面提到的其他步骤,因为它们遵循更标准化的“良好实践”方法。此外,在发送请求时,请确保设置以下头:
Accept:application/json
如果需要的话,你也可以使用Laravel中的中间件来“强制”这个header。链接here
1条答案
按热度按时间oaxa6hgo1#
有很多可能的解决方案。以this为例。
您可以创建自己的验证器,或者只是扩展Laravel中构建的现有验证器。此外,还可以返回您需要的任何其他内容,例如:
但如果您需要它进行验证,我会推荐前面提到的其他步骤,因为它们遵循更标准化的“良好实践”方法。
此外,在发送请求时,请确保设置以下头:
如果需要的话,你也可以使用Laravel中的中间件来“强制”这个header。链接here