Laravel自定义 封装便捷返回Json数据格式的引用方法

一般返回数据格式

 return response()->json(['status' => 'success','code' => 200,'message' => '关注成功']);

 return response()->json(['status' => 'fail','code' => 500,'error' => '关注失败',]);

基类控制器

<?php

namespace App\Http\Controllers;

use Illuminate\Foundation\Bus\DispatchesJobs;
use Illuminate\Routing\Controller as BaseController;
use Illuminate\Foundation\Validation\ValidatesRequests;
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;

class Controller extends BaseController
{
  use AuthorizesRequests, DispatchesJobs, ValidatesRequests;

  public function success($data = [])
  {
    return response()->json([
      'status' => true,
      'code'  => 200,
      'message' => config('errorcode.code')[200],
      'data'  => $data,
    ]);
  }

  public function fail($code, $data = [])
  {
    return response()->json([
      'status' => false,
      'code'  => $code,
      'message' => config('errorcode.code')[(int) $code],
      'data'  => $data,
    ]);
  }
}

errorcode文件

<?php

return [

  /*
  |--------------------------------------------------------------------------
  | customized http code
  |--------------------------------------------------------------------------
  |
  | The first number is error type, the second and third number is
  | product type, and it is a specific error code from fourth to
  | sixth.But the success is different.
  |
  */

  'code' => [
    200 => '成功',
    200001 => '缺少必要的参数',

    //文章
    503001 => '上传文件的格式不正确',
    503002 => '同步成功-记录保存失败',
    503003 => '权限错误',
    503004 => '文章保存失败',
    403017 => '临近定时时间不能取消发送任务',
    403018 => '临近定时时间不能修改发送任务',
    403019 => '超过发送时间不能发送',
    403020 => '缺少发表记录ID参数',
    //SMS
    416001 => '添加成功,审核中,请耐心等待',
    416002 => '签名添加失败',
  ],

];

可以对状态信息进行归类,如4--为用户端错误,5--位服务器端错误,2--为请求成功 。。。。。。。

返回引用

return $this->fail(503003);

return $this->Success();

以上这篇Laravel自定义 封装便捷返回Json数据格式的引用方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 让Laravel API永远返回JSON格式响应的方法示例

    json格式 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成.它基于ECMA262语言规范(1999-12第三版)中JavaScript编程语言的一个子集. JSON采用与编程语言无关的文本格式,但是也使用了类C语言(包括C, C++, C#, Java, JavaScript, Perl, Python等)的习惯,这些特性使JSON成为理想的数据交换格式. 本文将给大家详细介绍关于让Laravel API永

  • Laravel自定义 封装便捷返回Json数据格式的引用方法

    一般返回数据格式 return response()->json(['status' => 'success','code' => 200,'message' => '关注成功']); return response()->json(['status' => 'fail','code' => 500,'error' => '关注失败',]); 基类控制器 <?php namespace App\Http\Controllers; use Illumin

  • Laravel统一封装接口返回状态实例讲解

    前后端分离,接口返回封装方便你我他(方便前后端合作开发) 在Laravel中可以在公共继承的Controller.php写方法进行调用返回 app/Http/Controllers/Controller.php 成功返回 /** * $msg 返回提示消息 * $data 返回数据 */ public function success($msg,$data = []) { return response()->json([ 'status' => true, 'code' => 200,

  • 快速解决处理后台返回json数据格式的问题

    最近在做一个移动端前端项目,需要大量处理php后台开发同事返回给我的json数据,但是返回的数据格式不是很规范,导致我这边经常会出现以下图各种格式问题: 于是我就加上JSON.parse 但是,又很坑爹了,这个json没问题,其他一些json又出现问题了,如下图: 解决:判断后台返回的数据格式是否字符串,是则转,不是则不转 代码如下: var $obj = (typeof data.content == 'string') ? JSON.parse(data.content):data.cont

  • Laravel中validation验证 返回中文提示 全局设置的方法

    更改 resources\lang 目录下边的 validation.php <?php return [ /* |-------------------------------------------------------------------------- | Validation Language Lines |-------------------------------------------------------------------------- | | The follo

  • django通过ajax发起请求返回JSON格式数据的方法

    本文实例讲述了django通过ajax发起请求返回JSON格式数据的方法.分享给大家供大家参考.具体实现方法如下: 这是后台处理的: def checkemail(request): user = None if request.POST.has_key('email'): useremail = request.POST['email'] result = {} user = User.objects.filter(useremail__iexact = useremail) if user:

  • laravel 实现登陆后返回登陆前的页面方法

    最近做了一个项目,需要用户登录后,返回登陆前的页面. 一般的逻辑是,用户访问某个页面,判断未登录,跳转到登陆界面,登陆成功后,返回访问前的页面. 按照laravel的一般情况来做: //头部引入 use URL //登陆成功后执行 return redirect(URL::previous()); 结果发现跳转的是登陆页面,感觉很奇怪,最后发现是,我的登陆提交是一个新的方法,导致要返回之前的页面,需要返回2次才可以. 解决,在跳转到登陆界面的时候,将上次的网址记录,登陆成功后,跳转到记录的网址,

  • SpringBoot之返回json数据的实现方法

    一.创建一个springBoot个项目 操作详情参考:1.SpringBoo之Helloword 快速搭建一个web项目 二.编写实体类 /** * Created by CR7 on 2017-8-18 返回Json数据实体类 */ public class User { private int id; private String username; private String password; public String getPassword() { return password;

  • jQuery.get、jQuery.getJSON、jQuery.post无法返回JSON问题的解决方法

    经过尝试,只需要在$.ajax中加入 contentType: "application/json; charset=utf-8"选项就可以了,这是因为在.net 3.5以后要对contentType进行检查,所以仅仅指定dataType的话.net就不会返回JSON了,那么我们的请求自然也就无法请求到JSON数据了.正确写法就是这样了: 复制代码 代码如下: var url = "/Services/AccountService.asmx/UserExists";

  • django实现HttpResponse返回json数据为中文

    Python3读取写入json的中文乱码问题 之前我用django一般用JsonResponse来返回json数据格式 但是发现返回中文的时候会乱码 from django.http import JsonResponse def test(request): result = {"result": 0, "msg": "执行成功"} return return JsonResponse(result) 这种方式返回简单,但是中文会乱码 现在改成

随机推荐