oyedele/laravel-api-response-handler 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

oyedele/laravel-api-response-handler

Composer 安装命令:

composer require oyedele/laravel-api-response-handler

包简介

Standardized API responses for Laravel applications

README 文档

README

A lightweight Laravel package for standardizing API responses across your application.

Features

  • Consistent API response structure
  • Success and error responses
  • Paginated responses
  • Production-safe server error messages
  • Laravel 11 & 12 support

Installation

Install the package via Composer:

composer require femi/laravel-response-handler

Laravel package auto-discovery will automatically register the service provider.

Usage

Import the trait into your controller:

use Femi\ResponseHandler\Traits\ResponseHandler;

class RsvpController extends Controller
{
    use ResponseHandler;
}

Standard Response Format

Success Response

{
    "status": "success",
    "message": "Operation completed successfully",
    "data": {}
}

Error Response

{
    "status": "error",
    "message": "Something went wrong",
    "data": []
}

Paginated Response

{
    "status": "success",
    "message": "Records retrieved successfully",
    "data": [],
    "pagination": {
        "current_page": 1,
        "last_page": 10,
        "per_page": 15,
        "total": 150
    }
}

Success Response Example

return $this->apiResponse(
    'Rsvp section configured successfully',
    $result,
    Response::HTTP_CREATED
);

Response:

{
    "status": "success",
    "message": "Rsvp section configured successfully",
    "data": {
        ...
    }
}

Error Response Example

return $this->apiResponse(
    $this->serverErrorMessage($th->getMessage()),
    [],
    Response::HTTP_INTERNAL_SERVER_ERROR
);

Development Environment:

{
    "status": "error",
    "message": "SQLSTATE[42S02]: Base table not found",
    "data": []
}

Production Environment:

{
    "status": "error",
    "message": "An internal server error has occured",
    "data": []
}

Paginated Response Example

return $this->paginatedResponse(
    'Users retrieved successfully',
    $users,
    [
        'current_page' => $users->currentPage(),
        'last_page' => $users->lastPage(),
        'per_page' => $users->perPage(),
        'total' => $users->total(),
    ],
    Response::HTTP_OK
);

Available Methods

apiResponse()

apiResponse(
    string $message,
    array|object|null $data,
    int $code
)

Returns a standard API response.

paginatedResponse()

paginatedResponse(
    string $message,
    array|object $data,
    array $pagination,
    int $code
)

Returns a paginated API response.

serverErrorMessage()

serverErrorMessage(string $message)

Returns:

  • Actual exception message in local/development environments.
  • Generic error message in production.

Example Controller

<?php

namespace App\Http\Controllers;

use Symfony\Component\HttpFoundation\Response;
use Femi\ResponseHandler\Traits\ResponseHandler;

class UserController extends Controller
{
    use ResponseHandler;

    public function index()
    {
        $users = User::all();

        return $this->apiResponse(
            'Users retrieved successfully',
            $users,
            Response::HTTP_OK
        );
    }
}

Requirements

  • PHP 8.2+
  • Laravel 11.x or 12.x

License

The MIT License (MIT).

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-06-16

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固