欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

讓Laravel API永遠(yuǎn)返回JSON格式響應(yīng)的方法示例

 更新時(shí)間:2018年09月05日 15:38:29   投稿:daisy  
這篇文章主要給大家介紹了關(guān)于如何讓Laravel API永遠(yuǎn)返回JSON格式響應(yīng)的相關(guān)資料,需要的朋友可以參考下

json格式

JSON(JavaScript Object Notation) 是一種輕量級(jí)的數(shù)據(jù)交換格式,易于閱讀和編寫(xiě),同時(shí)也易于機(jī)器解析和生成。它基于ECMA262語(yǔ)言規(guī)范(1999-12第三版)中JavaScript編程語(yǔ)言的一個(gè)子集。 JSON采用與編程語(yǔ)言無(wú)關(guān)的文本格式,但是也使用了類C語(yǔ)言(包括C, C++, C#, Java, JavaScript, Perl, Python等)的習(xí)慣,這些特性使JSON成為理想的數(shù)據(jù)交換格式。

本文將給大家詳細(xì)介紹關(guān)于讓Laravel API永遠(yuǎn)返回JSON格式響應(yīng)的方法,下面話不多說(shuō)了,來(lái)一起看看詳細(xì)的介紹吧


當(dāng)你在編寫(xiě)完全為 API 服務(wù)的 Laravel 應(yīng)用時(shí),你希望所有響應(yīng)都是 JSON 格式的,而不是例如說(shuō)授權(quán)錯(cuò)誤會(huì)重定向到 /home 或 /login,最終重定向會(huì)變成 InvalidArgumentException: Route [login] is not defined. 的視圖。

下面這個(gè)簡(jiǎn)單的方案,可以讓你的 Laravel 應(yīng)用優(yōu)先響應(yīng)為 JSON 格式。

第一步、編寫(xiě) BaseRequest

首先我們需要構(gòu)建一個(gè) BaseRequest 來(lái)重寫(xiě) Illuminate\Http\Request ,修改為默認(rèn)優(yōu)先使用 JSON 響應(yīng):

app/Http/Requests/BaseRequest.php

<?php
namespace App\Http\Requests;

use Illuminate\Http\Request;
class BaseRequest extends Request
{
 public function expectsJson()
 {
  return true;
 }
 public function wantsJson()
 {
  return true;
 }
}

第二步、替換 BaseRequest

在 public/index.php 文件中,將 \Illumiate\Http\Request 替換為我們的 BaseRequest,如下:

$response = $kernel->handle(
 $request = \App\Http\Requests\BaseRequest::capture()
);

搞定!

現(xiàn)在所有的響應(yīng)都是 application/json ,包括錯(cuò)誤和異常。

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

相關(guān)文章

最新評(píng)論