laravel-api-docs-generate自定义生成API文档模板

关于作者

程序开发人员,不拘泥于语言与技术,目前主要从事PHP和前端开发,使用Laravel和VueJs,App端使用Apicloud混合式开发。合适和够用是最完美的追求。

个人网站:http://www.linganmin.cn

最近刚写了一个手机在线播放的H5电影站:http://www.ifilm.ltd



@if($parsedRoute['title'] != '')## {{ $parsedRoute['title']}}
@else## {{$parsedRoute['uri']}}
@endif
@if($parsedRoute['description'])

{!! $parsedRoute['description'] !!}
@endif


// apicloud
var that = this;
app.{{strtolower($parsedRoute'methods')}}("{{strtr($parsedRoute['uri'], ['api/' => ''])}}", @if(count($parsedRoute['parameters'])){!! str_replace(' ',' ',json_encode(array_combine(array_keys($parsedRoute['parameters']), array_map(function($param){ return $param['value']; },$parsedRoute['parameters'])), JSON_PRETTY_PRINT)) !!}, @endif function (data) {

//todo render
that.data = data

}@if($parsedRoute'methods' == 'POST'), function (xhr) {

switch (xhr.status) {
    case 422:
        //todo 验证失败
        //app.alert(xhr.responseJSON);
        break;
}

}@endif);


@if(in_array('GET',$parsedRoute['methods']))
> Example response:

@if(is_object($parsedRoute['response']) || is_array($parsedRoute['response']))
{!! json_encode($parsedRoute['response'], JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE) !!}
@else
{!! json_encode(json_decode($parsedRoute['response']), JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE) !!}
@endif

@endif

### HTTP Request
@foreach($parsedRoute['methods'] as $method)
`{{$method}} {{$parsedRoute['uri']}}`

@endforeach
@if(count($parsedRoute['parameters']))
#### Parameters

参数 | 类型 | 是否必填 | 中文名 | 验证规则
--------- | ------- | ------- | ------- | ----------- | -----------
@foreach($parsedRoute['parameters'] as $attribute => $parameter)
    {{$attribute}} | {{$parameter['type']}} | @if($parameter['required']) required @else optional @endif | {{trans('validation.attributes.' . $attribute)}} | {!! implode(' ',$parameter['description']) !!}
@endforeach
@endif


> Example request:

curl "{{config('app.url')}}/{{$parsedRoute['uri']}}" \
-H "Accept: application/json"@if(count($parsedRoute['parameters'])) \
@foreach($parsedRoute['parameters'] as $attribute => $parameter)

-d "{{$attribute}}"="{{$parameter['value']}}" \

@endforeach
@endif



安小下同学

你可能感兴趣的:(api设计,api,laravel,php)