承接 omalizadeh/laravel-api-response 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

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

omalizadeh/laravel-api-response

最新稳定版本:v1.3.0

Composer 安装命令:

composer require omalizadeh/laravel-api-response

包简介

Basic and standard api response format for laravel using json resources

README 文档

README

Basic and standard api response format for laravel using json resources.

Installation

composer require omalizadeh/laravel-api-response

Output Format

Resources:

{ "data": { "id": 1, "email": "test@test.com" }, "message": "message", "errors": { "password": [ "wrong password." ] } }

ResourceCollection:

{ "data": { "items": [], "count": 0, "sum": null }, "message": null, "errors": null }

On validation error for requests (with 422 status code):

{ "data": null, "message": "first error message in message bag", "error": { "password": [ "password field is required." ] } }

Usage

Create resources and requests with artisan commands and pass data, message or count to resources like following examples:

 public function index(EmailFilter $filters) { $emailsFilterResult = Email::filter($filters); return EmailResource::collection([ 'data' => $emailsFilterResult->data(), 'count' => $emailsFilterResult->count(), ]); }
 public function show(Email $email) { return new EmailResource(['data' => $email, 'message'=> 'email info.']); }

You can specify output fields from transformDataItem() method of resource classes.

<?php namespace App\Http\Resources; use Omalizadeh\ApiResponse\Resources\BaseApiResource; class EmailResource extends BasicResource { protected function transformDataItem($item) { return [ 'id' => $item->id, 'email' => $item->email, 'status' => $item->status ]; } }

Also, you can use apiResponse() helper function to directly send response

class PhoneController { public function show(Phone $phone) { return apiResponse()->data($phone)->message('phone info.')->status(200)->get(); } public function index() { $phones = Phone::all(); return apiResponse()->collection($phones, $phones->count())->message('phone info.')->status(200)->get(); } public function update(Request $request, Phone $phone) { $isUpdated = $phone->update($request->all()); if (!$isUpdated) { return apiResponse()->errorMessage('phone is not updated'); } return apiResponse()->data($phone)->message('phone is updated')->get(); } }

In above example message and status are optional, and their default value respectively are null and 200.

Resource

php artisan make:api-resource ResourceClassName

Request

php artisan make:api-request RequestClassName

统计信息

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

GitHub 信息

  • Stars: 4
  • Watchers: 1
  • Forks: 2
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-01-04

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固