手机版

如何使Laravel API始终返回JSON格式响应的示例

时间:2021-08-30 来源:互联网 编辑:宝哥软件园 浏览:

Json格式

JSON(JavaScript Object notification)是一种轻量级的数据交换格式,易于读写,也易于机器解析和生成。它基于ECMA262语言规范(第三版,1999-12)中的JavaScript编程语言的子集。JSON采用了独立于编程语言的文本格式,但也使用了C类语言的习惯(包括C、C、C#、Java、JavaScript、Perl、Python等。),这使得JSON成为一种理想的数据交换格式。

本文将详细介绍让Laravel API始终返回JSON格式响应的方法。下面就不多说了,我们来看看详细的介绍

当您编写完全服务于API的Laravel应用程序时,您希望所有响应都是JSON格式,而不是,例如,授权错误将被重定向到/home或/login,最终重定向将成为Invalidargumentexception 3360的视图路由[login]未定义。

下面这个简单的方案可以让你的Laravel应用优先响应JSON格式。

第一步是编写一个基本请求

首先,我们需要构建一个BaseRequest来重写lightning \ Http \ Request,并将其修改为默认情况下首先使用JSON响应:

app/Http/Requests/BaseRequest . PHP

?phpnamespace App \ Http \ Requests使用照明\ Http \ Requestclass BaseRequest扩展了Request { public function expectsjsson(){ return true;}公共函数wantsjsson(){ return true;}}步骤2:替换基本请求

在public/index.php文件中,用我们的BaseRequest替换\ illumiante \ http \ request,如下所示:

$ response=$ kernel-handle($ request=\ App \ Http \ Requests \ base Requests : capture());搞定了。

现在所有的响应都是application/json,包括错误和异常。

摘要

以上就是本文的全部内容。希望本文的内容对大家的学习或工作有一定的参考价值。有问题可以留言交流。谢谢你的支持。

版权声明:如何使Laravel API始终返回JSON格式响应的示例是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。