安装插件
按照apidoc官方教程
在webman根目录下,使用composer命令安装apidoc
安装前端页面
下载并解压前端页面文件,将apidoc文件夹上传到webman/public
目录下
安装完成后,文档中有个配置异常响应
的教程。
这一步不用操作。
添加域名解析
以腾讯云为例。
进入域名控制台——域名列表——我的解析——添加记录
添加一个二级域名,用于访问api文档
添加Nginx代理
按照webman教程的内容,添加Nginx配置。
配置好server_name和root的值以后,重载Nginx配置。
其中,root路径要指向public
目录在服务器里的完整路径。
添加站点
宝塔面板中,不需要添加站点了。
只需要配置好Nginx代理,就可以访问指定的域名。
访问
打开浏览器访问
http://域名/apidoc/index.html
出现接口文档页面,表示安装成功。
错误提示
不出意外的话,访问后,页面会迅速从首页跳转到500错误
提示:Class app\controller\IndexController does not exist
指定的类不存在。怎么解决呢?
解决
结合apidoc作者的提供的Demo,对插件的配置文件webman/config/plugin/hg/apidoc/app.php
做如下修改,即可正常访问首页。
'apps' => [
[
'title' => 'Demo',
'path' => 'app\demo\controller',
'key' => 'demo',
'groups' => [
['title' => '基础示例', 'name' => 'base'],
['title' => '接口示例', 'name' => 'apiDemo'],
['title' => '多级分组', 'name' => 'subMenu',
'children' => [
['title' => '分组1', 'name' => 'sub1',],
['title' => '分组2', 'name' => 'sub2'],
]
],
],
],
],
第一个api接口文档
官方提供的例子,是php8的。
对接到php的webman里,访问后会疯狂的报错。
所以要将例子改成php7风格的。
新建文件:
webman/app/demo/controller/Base.php
<?php
namespace app\demo\controller;
use support\Request;
use hg\apidoc\annotation as Apidoc;
class Base
{
/**
* @Apidoc\Title("基础的接口演示")
* @Apidoc\Tag("基础,示例")
* @Apidoc\Method ("GET")
* @Apidoc\Url ("/demo/index")
* @Apidoc\Query("name", type="string",require=true, desc="姓名",mock="@name")
* @Apidoc\Query("phone", type="string",require=true, desc="手机号",mock="@phone")
* @Apidoc\Returned("id", type="int", desc="Id")
*/
public function index(Request $request){
return json(['code' => 0, 'msg' => 'ok']);
}
}
接下来就可以访问部署好的接口文档了
第一个markdown文档
如何配置才能访问markdown文档,官方教程写的有点乱,甚至有错误。
自己琢磨成功了。
先下载webman的Demo
将其中的docs目录,上传到webman项目的根目录。
然后修改apidoc插件的配置
// webman/config/plugin/hg/apidoc/app.php
// markdown 文档
'docs' => [
['title' => '介绍', 'path' => 'docs/apiDesc'],
['title' => 'md语法示例', 'path' => 'docs/Use'],
['title' => 'md Test', 'path' => 'docs/mdApi'],
[
'title' => 'HTTP响应编码',
'children' => [
['title' => 'status错误码说明', 'path' => 'docs/HttpStatus'],
['title' => 'code错误码说明', 'path' => 'docs/HttpCode_${app[0].folder}_${app[1].folder}'],
],
]
],
访问markdown文档:
飞云脚本圈: 586333520
Auto.js学习交流③群:286635606
Auto.js学习交流②群:712194666(满员)
IOS免越狱自动化测试群:691997586
2. 盗版,破解有损他人权益和违法作为,请各位会员支持正版。
3. 本站部分资源来源于用户上传和网络搜集,如有侵权请提供版权证明并联系站长删除。
4.如未特别申明,本站的技术性文章均为原创,未经授权,禁止转载/搬运等侵权行为。
5.全站所有付费服务均为虚拟商品,购买后自动发货。售出后概不接受任何理由的退、换。注册即为接受此条款。
6.如果站内内容侵犯了您的权益,请联系站长删除。
飞云脚本 » webman安装apiDoc插件之后,出现500错误的解决方法