xbld/laravel-api-response

此包的最新版本(dev-master)没有可用的许可信息。

RESTful API 的响应

dev-master 2016-07-01 00:43 UTC

This package is not auto-updated.

Last update: 2024-09-14 19:25:38 UTC


README

对于 RESTful API

Laravel 在将我们的响应格式化为 JSON 并以 application/json 内容类型适当地输出方面做得很好,但它并没有帮助处理任何类型的标准输出格式,例如在响应中包含 "状态" 或 "消息"。这个类使我们能够标准化所有的 RESTful 响应,使我们的前端朋友更加高兴。同时也有助于单元测试,因为每个响应都有真/假值。

功能列表

  • 为所有请求提供标准化响应。
  • 能够将调试信息记录到响应中,以便更容易调试。
安装
$ composer require xbld/laravel-api-response
设置

打开 config\app.php 并将以下内容添加到 providers 数组中

XBLD\ApiResponse\ApiResponseServiceProvider::class,

别忘了运行 dump-autoload

$ composer dump-autoload
用法

这应该在控制器中按方法使用。将以下内容添加到控制器顶部

use XBLD\ApiResponse\APIResponse;

示例方法

public function store(Request $request)
{
	$return = new APIResponse();
    
    // If something fails on execution, Maybe a query does not
    // return anything...
    $return->status = false;
    $return->addMessage("Model Not Found");
    
    
    // Add the payload. Can be any array and will return JSON
    $return->payload = [
    	'foo'	=> 'bar',
        'bar'	=> true
    ];
    
    // Return the response.
    return $return->response();
}

示例输出

{
	"status": false,
    "messages": [
    	"Model Not Found"
    ],
    "data": {
    	[
        	"foo": "bar",
            "bar": true
        ]
    },
    "completed_at": "2016-06-06 12:06:33"
}