showdoc单页面集

此项目把一些零零散散、在网站各处引用的单页集合在一起


自动生成API文档

<p>[TOC]</p> <h4>介绍</h4> <p>showdoc官方提供了一种自动化生成接口和文档的方案。在代码里编写特定格式的程序注释,然后程序就可以通过读取这些注释来自动生成文档。由于这种方式不跟特定的语言耦合,因此它的使用范围相当广泛,可以支持c++、java、php、node等等常见的主流语言。</p> <p>采用这种方式,尽管我们在第一次填写注释的时候可能会有些繁琐,但是它后期带来的可维护性是非常高的。代码变动后,不需要再额外登录showdoc,直接在代码里修改注释即可。同时自动化的脚本也可以加入持续集成或者某些自动化工程里,让“写接口和文档”这件事如&quot;单元测试&quot;般纳入工程工作流里面。</p> <h4>windows下使用指引</h4> <p>windows无法直接运行sh脚本,需要额外下载软件。</p> <p>推荐下载git for windows:[点此下载](<a href="https://git-scm.com/download/win">https://git-scm.com/download/win</a> &quot;点此下载&quot;) 下载后直接双击安装即可。 如果从官网下载比较慢,可用考虑下载由第三方开发者维护的国内版(showdoc官方不保证其长期稳定): [点此下载](<a href="https://npm.taobao.org/mirrors/git-for-windows/v2.17.0.windows.1/Git-2.17.0-64-bit.exe">https://npm.taobao.org/mirrors/git-for-windows/v2.17.0.windows.1/Git-2.17.0-64-bit.exe</a> &quot;点此下载&quot;)</p> <p>以上软件是基础环境。安装好了后,还需要下载showdoc官方脚本:[点此下载](<a href="https://www.showdoc.cc/script/showdoc_api.sh">https://www.showdoc.cc/script/showdoc_api.sh</a> &quot;点此下载&quot;) 下载后,将showdoc_api.sh放在你的项目目录下。右击,选择编辑。 脚本内容的前面有两个变量,api_key 和 api_token ,这个需要用户自行填写。关于这两个变量的取值,要看你是生成showdoc项目还是runapi项目。</p> <ul> <li>如果你的项目是在showdoc网页上创建的,则请登录showdoc,进入某个项目的设置,点击开放API,便可以看到api_key 和 api_token的说明</li> <li>如果你的项目是在 [runapi客户端](<a href="https://www.showdoc.com.cn/runapi/30291">https://www.showdoc.com.cn/runapi/30291</a> &quot;runapi客户端&quot;) 上创建的,则可以点击runapi客户端右上角的菜单栏,选择“项目”。然后点击其中一个项目的“自动生成”按钮,便可以看到api_key 和 api_token的说明</li> </ul> <p>showdoc_api.sh生成的文档会放进api_key 所指向的这个项目里。除了api_key 和 api_token ,还有一个url变量。如果是使用www.showdoc.com.cn ,则不需要修改。如果是使用私有版showdoc,则需要将地址改为http://xx.com/server/index.php?s=/api/open/fromComments ,其中,别忘记了url里含server目录。 填写完毕,保存。然后直接双击运行,脚本会自动递归扫描本目录和子目录的所有文本代码文件,并生成API文档。 为了方便测试,官方还提供了一个例子。请下载:</p> <p>[测试demo](<a href="https://www.showdoc.cc/script/api_demo.test">https://www.showdoc.cc/script/api_demo.test</a> &quot;测试demo&quot;)</p> <p>下载后,把api_demo.test文件放在showdoc_api.sh所在的目录或者子目录下。运行的时候它便会生成文档到你指定的项目地址中。 如果你想参考官方demo是怎么写的,可用鼠标右击api_demo.test,选择编辑。仿照此种写法,在你的项目中插入类似的注释,也能达到自动生成文档的效果。详细语法会在文章后面部分说明。</p> <p>如果你想应用到其他项目,可以把showdoc_api.sh复制一份到其他项目中。使用方法和前面一样。</p> <h4>Linux/Mac下使用指引</h4> <p>先cd进入你的项目目录,命令行模式下输入:</p> <p><code>wget https://www.showdoc.cc/script/showdoc_api.sh</code></p> <p>下载完毕,编辑</p> <p><code>vi showdoc_api.sh</code></p> <p>脚本内容的前面有两个变量,api_key 和 api_token ,这个需要用户自行填写。关于这两个变量的取值,要看你是生成showdoc项目还是runapi项目。</p> <ul> <li>如果你的项目是在showdoc网页上创建的,则请登录showdoc,进入某个项目的设置,点击开放API,便可以看到api_key 和 api_token的说明</li> <li>如果你的项目是在[ runapi客户端](<a href="https://www.showdoc.com.cn/runapi/30291">https://www.showdoc.com.cn/runapi/30291</a> &quot; runapi客户端&quot;) 上创建的,则可以点击runapi客户端右上角的菜单栏,选择“项目”。然后点击其中一个项目的“自动生成”按钮,便可以看到api_key 和 api_token的说明</li> </ul> <p>showdoc_api.sh生成的文档会放进api_key 所指向的这个项目里。除了api_key 和 api_token ,还有一个url变量。如果是使用www.showdoc.com.cn ,则不需要修改。如果是使用私有版showdoc,则需要将地址改为http://xx.com/server/index.php?s=/api/open/fromComments ,其中,别忘记了url里含server目录。</p> <p>保存文件后。执行以下命令,脚本会自动递归扫描本目录和子目录的所有文本代码文件,并生成API文档。</p> <pre><code> chmod +x showdoc_api.sh ./showdoc_api.sh</code></pre> <p>为了方便测试,官方还提供了一个例子。请下载: <code>wget https://www.showdoc.cc/script/api_demo.test</code></p> <p>下载后,把api_demo.test文件放在showdoc_api.sh所在的目录或者子目录下。运行的时候它便会生成文档到你指定的项目地址中。 如果你想参考官方demo是怎么写的,可用vi命令打开api_demo.test。仿照此种写法,在你的项目中插入类似的注释,也能达到自动生成文档的效果。详细语法会在文章后面部分说明。</p> <p>如果你还想应用到其他项目,可以把showdoc_api.sh复制一份到其他项目中。使用方法和前面一样。 或者不转移位置,直接通过参数指定扫描目录。如</p> <p><code>./showdoc_api.sh /myapp/demo/</code></p> <h4>语法说明</h4> <p>一个标准语法例子:</p> <pre><code> /** * showdoc * @catalog 测试文档/用户相关 * @title 用户登录 * @description 用户登录的接口 * @method get * @url https://www.showdoc.cc/home/user/login * @header token 可选 string 设备token * @param username 必选 string 用户名 * @param password 必选 string 密码 * @param name 可选 string 用户昵称 * @return {&amp;quot;error_code&amp;quot;:0,&amp;quot;data&amp;quot;:{&amp;quot;uid&amp;quot;:&amp;quot;1&amp;quot;,&amp;quot;username&amp;quot;:&amp;quot;12154545&amp;quot;,&amp;quot;name&amp;quot;:&amp;quot;吴系挂&amp;quot;,&amp;quot;groupid&amp;quot;:2,&amp;quot;reg_time&amp;quot;:&amp;quot;1436864169&amp;quot;,&amp;quot;last_login_time&amp;quot;:&amp;quot;0&amp;quot;}} * @return_param groupid int 用户组id * @return_param name string 用户昵称 * @remark 这里是备注信息 * @number 99 */ </code></pre> <table> <thead> <tr> <th>关键字</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td><code>@catalog</code></td> <td>生成文档要放到哪个目录。如果只是二级目录,则直接写目录名字。如果是三级目录,而需要写二级目录/三级目录,即用<code>/</code>隔开。如&quot;一层/二层/三层&quot;</td> </tr> <tr> <td><code>@title</code></td> <td>表示生成的文档标题</td> </tr> <tr> <td><code>@description</code></td> <td>是文档内容中对接口的描述信息</td> </tr> <tr> <td><code>@method</code></td> <td>接口请求方式。一般是get或者post</td> </tr> <tr> <td><code>@url</code></td> <td>接口URL。不要在URL中使用&amp;符号来传递参数。传递参数请写在参数表格中</td> </tr> <tr> <td><code>@header</code></td> <td>可选。header说明。一行注释对应着表格的一行。用空格或者tab符号来隔开每一列信息。</td> </tr> <tr> <td><code>@param</code></td> <td>参数表格说明。一行注释对应着表格的一行。用空格或者tab符号来隔开每一列信息。</td> </tr> <tr> <td><code>@json_param</code></td> <td>可选。当请求参数是json的时候,可增加此标签。请把json内容压缩在同一行内。当采用这种json方式的时候,上面的@param表格的参数说明将自动变成是对此json的字段描述说明</td> </tr> <tr> <td><code>@return</code></td> <td>返回内容。请把返回内容压缩在同一行内。如果是json,程序会自动进行格式化展示。 如果是非json内容,则原样展示。</td> </tr> <tr> <td><code>@return_param</code></td> <td>返回参数的表格说明。一行注释对应着表格的一行。用空格或者tab符号来隔开每一列信息。</td> </tr> <tr> <td><code>@remark</code></td> <td>备注信息</td> </tr> <tr> <td><code>@number</code></td> <td>可选。文档的序号。</td> </tr> </tbody> </table> <h4>其他信息</h4> <p>请严格按照我们的语法来填写程序注释。如果格式不对,则可能引发未知的解析错误。</p> <p>出于数据安全考虑,showdoc不允许直接通过代码删除文档。只能新增或者修改。所以,如果你要删除文档,请登录showdoc网页端(如果是runapi项目则需要登录runapi客户端)完成。</p> <p>本脚本只能通过特定的程序注释来生成文档,使用范围有限。如果你是想通过其他方式自由地生成文档,如通过word、通过博客软件等,请参考我们更自由的开放API:[点击跳转](<a href="https://www.showdoc.cc/page/102098">https://www.showdoc.cc/page/102098</a> &quot;点击跳转&quot;)</p> <p>如果你的项目下太多文件,则可能导致脚本扫描很慢。推荐把脚本放到需要生成注释的那个目录里。一般来讲,一个项目不会所有目录都需要生成文档的</p>

页面列表

ITEM_HTML