跳到主要内容

常见问题

1. Apifox 是否收费?

Apifox 公网版 (SaaS 版) 免费,私有化部署版收费。

2. 登录(Auth)态如何实现?

请参考文档:登录态(Auth)如何处理

3. 接口发送请求前需要调用登录接口获取 token 放在 header,如何实现?

请参考文档:登录态(Auth)如何处理

4. B 接口请求参数依赖于 A 接口返回的数据,如何实现?

请参考文档:接口之间如何传递数据

5. 同项目下有不同域名的接口,如何处理?

方案一:在环境里新增多个服务,分别设置不同的前置 URL ,接口分组和接口维度可以指定对应的前置 URL。推荐本方案!

方案二:把域名设置成环境变量如DOMAIN_1,接口路径这样填写:https://{{DOMAIN_1}}/users。接口路径是以http://https://起始的,系统会自动忽略里环境里前置 URL。

方案三:给不同域名接口设置不同环境,通过切换环境来运行不同域名下的接口。不推荐本方案!

6. 脚本如何读取或修改接口请求信息?

请参考文档: 脚本读取/修改接口请求信息

7. 是否支持查询数据库字段作为参数传给接口?

支持,请参考文档:数据库操作

8. 数据是存储在本地还是云端?可否离线使用?可否私有化部署?

目前 Apifox 有 Saas 版私有化部署版

Saas 版 是免费的,数据都是存在云端的,需要联网才能使用。

私有化部署版 是收费的,数据存在使用者企业内部,不连外网也可以使用。

注意

环境变量/全局变量里的 本地值 仅存放在本地,不会同步到云端,团队成员之间也不会相互同步,适合存放token账号密码之类的敏感数据。

9. 使用 Postman 调用接口返回正常,而 Apifox 返回错误

解决方法:对比 postman 和 apifox 实际发出的请求内容(url、参数、body、header)是否完全一样。

查看实际请求内容方法:

  1. Apifox:返回内容下的实际请求 tab 里查看
  2. Postman:点击底部状态栏里的Console查看

10. 为什么修改了环境变量(或全局变量)值,而引用的地方没有生效?

  1. 请检查环境变量全局变量临时变量里是不是有多个地方定义了相同名称的变量,如果有,系统会根据优先级来取值。优先级顺序如下:临时变量>环境变量>全局变量
  2. 请检查修改的是否是本地值,环境变量(或全局变量)仅读取本地值,而不会读取远程值

11. Web 端与客户端有何区别?

Web 端与客户端在主要流程的使用上没有明显差异,都能够满足团队内的接口协作需求,但以下功能存在差异。

以下截图均为 Web 端截图。

导出接口

Web 端:❌ 客户端:✅

Agent 服务

Web 端:✅ 客户端:❌

本地 Mock 功能

Web 端:❌ 客户端:✅

生成业务代码

Web 端:❌ 客户端:✅

外部程序

Web 端:❌ 客户端:✅

调整字体大小

Web 端:❌ 客户端:✅

网络代理

Web 端:❌ 客户端:✅

12. Web 端与客户端数据不同步如何处理?

若发现客户端中某个项目的接口数据与 Web 端不一致,那么有可能是因为两端数据未同步。你可以尝试以下两种方法解决:

  1. 退出 Apifox 客户端后重新运行。
  2. 进入 Apifox 客户端中的项目后,点击右上角的“刷新”按钮。

13. ApifoxAppAgent 进程的作用是什么?

打开 Apifox 时,你可能会留意到电脑的后台进程中出现了 ApifoxAppAgent 进程。

ApifoxAppAgent 进程

这个进程的作用用于唤醒 Apifox 客户端场景。例如当你在浏览器中打开由其他人所分享的链接(比如 API 在线文档分享地址、接口协作链接等),或在 API 文档内点击 “Run in Apifox” 功能时,该进程负责执行自动唤醒 Apifox 客户端并定位到目标位置。

提示

该进程占用的资源非常轻量,建议不要关闭。

如何在 macOS 系统内关闭该进程?

  • 关闭开机启动

打开“系统偏好设置” → “用户与群组” → “选择用户” → “登录项” tab,取消勾选 ApifoxAppAgent

Apifox 私有化部署
  • 关闭进程

打开“系统偏好设置” → “安全些与隐私” → “自动化”,取消勾选 ApifoxAppAgent

Apifox 私有化部署