前言
在现代软件开发中,接口文档的管理是至关重要的。IDEA的EasyYapi插件提供了一种快速将接口文档生成到Yapi平台的方法。然而,在使用过程中,我们可能会遇到各种问题。本文将分享一个实际案例,详细解析问题的原因及解决方案。
问题
本来想着用idea easyYapi插件 快速生成接口文档到 yapi上去 结果一直报错
run easy-yapi
[TRACE] No config be found
[DEBUG] use recommend config
[DEBUG] use built-in config
[INFO] Start find apis...
[TRACE] No config be found
[DEBUG] use recommend config
[DEBUG] use built-in config
[INFO] search api from: com.xx.xx.manage.web.xxxInfoController
[ERROR] error to parse project [428] info:<!DOCTYPE html>
<html>
.....
</html>
[INFO] No token be found for xxx
[INFO] Apis exported completed
接着开始长达两个小时找错环节
分析
经过不断地尝试 原来发现发现yapi地址配置不正确 在配置中添加了 项目路径以及项目ID

解决方案
配置问题 解决办法
yapi的服务器地址 注意只是yapi的服务器地址 后面什么都不要加 后面什么都不要加 后面什么都不要加 !!!!
旧的配置如下 yapi服务器地 后添加了 /project/项目ID

修改后 只保留yapi服务器地址 后面的不要

修改后 在生成配置 发现在生成接口成功了

兼容问题 解决办法
兼容行问题解决通常都比较复杂 这里我们更换验证方式
修改为 loginMode 填入自己的项目ID

配置鉴权逻辑

添加如下代码 登录地址 以及账号密码修改为自己的
yapi.export.before=groovy:
httpClient.request().url("http://127.0.0.1:3000/api/user/login")
.method("POST")
.contentType("application/json")
.body(["email":"xxx@xxx.com","password":"*******"])
.call();
使用技巧
项目token 配置 避免每次导出接口文档都需要输入token
在 tokens 这个地方填入项目名=token
例如 controller 类 在 xxx-service module里 那这里填入 xxx-service=token 之后就可以直接生成文档 而不用填入token了

项目Token
可以将项目名和Token关联起来,方便在多个项目间切换。
调试和错误处理
查看日志:在导出过程中,查看IDEA的底部输出窗口中的EasyYapi日志,以获取错误信息和调试信息。
错误排查:如果导出失败,根据日志中的错误信息进行排查,可能需要检查网络连接、Yapi服务器状态或API定义。
集成到CI/CD
自动化文档生成:在CI/CD流程中集成EasyYapi插件,实现自动化的API文档生成和更新。
版本控制
同步更新:在API有变更时,及时使用EasyYapi插件更新Yapi中的文档,保持文档与代码的同步。
历史记录:利用Yapi的历史记录功能,可以追踪API变更历史。
文档说明
官方文档说明如下:http://easyyapi.com/documents/login_mode_yapi.html
easyYapi 使用说明:http://easyyapi.com/documents/export2yapi.html
good night
文章描述了一位开发者在使用ideaeasyYapi插件向yapi生成接口文档时遇到的错误,问题在于yapi的服务器地址配置不正确,后面不应附加额外信息。解决方案是确保服务器地址只包含基础URL,不包括/project/项目ID。此外,对于登录模式和鉴权逻辑的配置也进行了调整,包括设置登录地址、账号密码,并通过groovy脚本进行自动化登录。参考官方文档和插件使用说明,最终成功解决了问题。

127

被折叠的 条评论
为什么被折叠?



