资讯专栏INFORMATION COLUMN

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

defcon / 3048人阅读

摘要:关于作者程序开发人员,不拘泥于语言与技术,目前主要从事和前端开发,使用和,端使用混合式开发。合适和够用是最完美的追求。个人网站最近刚写了一个手机在线播放的电影站验证失败参数类型是否必填中文名验证规则安小下同学

关于作者

程序开发人员,不拘泥于语言与技术,目前主要从事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


安小下同学

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/22469.html

相关文章

  • 优于 swagger 的 java markdown 文档自动生成框架-01-入门使用

    摘要:很多项目不写文档,即使写文档,对于开发人员来说也是非常痛苦的。无法保证及时更新。是基于注解的文档生成工具。让文档的阅读者享受到等同于手写文档的体验。将信息的获取和生成区分开。基于原生的注释,尽可能的生成简介的文档。 设计初衷 节约时间 Java 文档一直是一个大问题。 很多项目不写文档,即使写文档,对于开发人员来说也是非常痛苦的。 不写文档的缺点自不用多少,手动写文档的缺点也显而易见:...

    RdouTyping 评论0 收藏0
  • MyBatis Generator 自定生成注释

    摘要:最近做项目,使用的是,为了偷懒,我自然而然的想到了使用来生成数据库表对应的实体代码和代码。 最近做项目,ORM 使用的是 MyBatis,为了偷懒,我自然而然的想到了使用 MyBatis Generator(MBG)来生成数据库表对应的实体代码和 Mapper 代码。于是做了如下的配置(对 MBG 配置不熟悉的同学可以参考 Mybatis Generator最完整配置详解): ...

    sugarmo 评论0 收藏0
  • registerModule: 动态注册vuex模块,对于自定生成组件很有用

    摘要:动态注册模块在创建之后,你可以使用方法注册模块动态注册模块,对于自定义生成组件很有用实现方案注册前后中对比结尾源码地址 registerModule: 动态注册vuex模块 在 store 创建之后,你可以使用 store.registerModule 方法注册模块:registerModule 动态注册vuex模块,对于自定义生成组件很有用 实现方案 html {{messag...

    Kerr1Gan 评论0 收藏0
  • Spring Data REST API集成Springfox、Swagger

    摘要:请注意,截至目前版本,用于的集成仍处于孵化阶段,并且存在一些严重的错误和缺少的功能例如,请参阅此处和此处。响应可以使用和注解来调整不同的响应状态及其有效结论允许您在创建数据库驱动的时产生快速结果。 原文: Documenting a Spring Data REST API with Springfox and Swagger 使用Spring Date REST,你可以迅速为Spr...

    darcrand 评论0 收藏0
  • 在Forge Viewer上显示自订属性

    摘要:最近有的小伙伴们都在询问要怎么在里显示自订义属性,要做到这个是挺容易的。在来我们透过继承来创建自个的属性面板使用的语法,部份代码来自的无法从服务器获取属性透过撰写括展让自定义属性窗取代自带的以上希望对各为小伙伴有帮助参考 最近有 Autodesk Forge 的小伙伴们都在询问要怎么在 Viewer 里显示自订义属性,要做到这个是挺容易的。目前有两种方式可以做到这个效果,一种是直接添加...

    seasonley 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<