PHP code example of brooksyang / laravel-api-helper

1. Go to this page and download the library: Download brooksyang/laravel-api-helper library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

brooksyang / laravel-api-helper example snippets


composer 

php artisan vendor:publish --tag=api-helper

cache_tag_prefix // 缓存前缀,默认为api_helper,建议不同项目设置不同前缀以防止冲突

cache_ttl // 缓存时长,默认120分钟,可根据项目需求自行设置

api_base_url // 接口请求基础地址,默认为当前<host_name>,一般情况下不需要配置,若存在内外网不通的情况,可设置为相应内网地址

api_doc // v1.5.2 新增,是否开启Api文档及测试工具,默认 true

api_pressure_test // v1.4.7 新增,是否开启压力测试功能,默认 false

namespaces // 指定生成Api文档命名空间,数组,key为group,value为namespace,请确保namspace之间没有交集,否则小集合将被忽略

namespaces => [
    'Helper' => 'BrooksYang\LaravelApiHelper\Controllers\BuiltIn', // v1.6.0 新增,内置接口访问统计
    'App'  => 'App\Http\Controllers', // 生效
    'Test' => 'App\Http\Controllers\Test', // 无效
    'Api'  => 'Api\Controllers' // 生效
];

|--app
    |--Http
        |--Controllers
            |--TestController // 无效
            |--Demo
                |--DemoController // 生效
                |--Deep
                    |--DeepController // 生效,与DemoController 同级
|--Api
    |--Controllers
        |--Xxx
            |--XxxController // 生效

/**
 * The application's route middleware groups.
 *
 * @var array
 */
protected $middlewareGroups = [
    // ***
    
    'api' => [
        'throttle:60,1',
        'bindings',
        'request.counter', // 启用「接口访问统计」中间件
    ],
];

CACHE_DRIVER=redis

CACHE_DRIVER=array

use BrooksYang\LaravelApiHelper\Traits\ResponseHelper;

/**
 * 这里是api标题
 *
 * @return \Illuminate\Http\Response
 */
public function index(Request $request)
{
    // 支持以下三种方式接收表单参数
    $paramA = $request->input('param_a'); // 参数一说明
    $paramB = $request->get('param_b'); // 参数二说明
    $paramC = Input::get('param_c'); // 参数三说明
    
    // 针对资源路由(v1.6.0 新增)
    $param = $request->input('{param}'); // 资源路由参数接收
    
    // 支持接收表单文件(v1.3.0新增)
    $file = $request->file('upload_file');
    
    // 以下是返回内容,ResponseHelper封装了三种返回方法,不强制使用,可自定义返回数据结构
    return $this->jsonResponse(['test' => 'blablabla'], '操作成功'); // 方式一,操作成功,返回数据及提示信息
    return $this->errorResponse(['code' => 'xxx', 'msg' => '操作失败']); // 方式二,操作失败,返回错误码及错误消息
    return $this->msgResponse('操作成功'); // 方式三,操作成功,仅返回成功提示消息
}

php artisan cache:clear

http://<HOST_NAME>/api/docs