跳至主要內容

FAQ


关键字含义

S: 技巧 Q: 问题 A: 答案

我们将持续更新开发者遇到的问题以及解决方案

S: 快捷添加域名

请参考 项目级别域名配置 (插件版本>=2023.1.1)

S: APIs 丢失

非常抱歉,安装过 2023.1.3 版本的(已隐藏)会导致历史 apis 丢失,此时需要手动找回数据。请不要回退插件版本

  1. 下载插件版本>=2023.1.3.2+的版本
  2. 找到项目下的.idea 目录,右键并点击 Local history(本地历史记录),找到关于.idea/FastRequestCollection.xml的变更日志(标题包含了 Deleting),找到最后一个版本,把其中的内容拷贝到.idea/fastRequest/fastRequestCollection.xml中,
  3. 重启 idea
  4. 在 APIs tab 下点击图标并确认数据转移

dataTransfer20231

S: Url 错误

urlError

解决办法
  1. 配置正确的域名,并启用项目和环境2个下拉框
  2. 设置正确的url,例如需要将url上的变量{id}替换,可以在Path Param tab中替换变量

S: 解析如何忽略某个字段

方式 1: 使用如下 2 种注解中的一种

com.fasterxml.jackson.annotation.JsonIgnore

com.alibaba.fastjson.annotation.JSONField(serialize = false)

方式 2: 给字段增加 static 修饰符

方式 3:注释上加@parseIgnore

/**
 * xxx description
 * @parseIgnore
 */
private String someIgnoreField ;

S: 快速定位

获取到窗口或者弹出框焦点以后,输入需要搜索的字母,快读定位,然后使用箭头或者箭头进行跳跃定位

例如:

apiDocExample

S: 多文件上传

输入多个值并将字段类型设置为 file

multiFileUpload

S: Body 中想直接传 text

在 header 中加入Content-Type: text/plain

考虑使用常用头参数快速添加

S: 没有 Controller,如何发送请求

参考临时请求

S: 写脚本时得到提示

复制一下代码,完成脚本编辑后删除

import cn.hutool.http.HttpUtil

def request = HttpUtil.createGet("shouldremove")
def response = request.execute()

S: API 文档同步

当你修改了你的接口参数,从 APIs 列表双击回来的 api 是你未更新前保存的 API,此时你想保证在线 API 文档是你修改后的, 需要再点一下 (保存) 或者左侧图标 ,再进行同步。

建议:不需要提前在 Github、Gitee、Gitlab 创建仓库,插件自动会帮助创建,开发者只需要提供仓库名就行

S: APIs 回显

针对保存后的 api,又进行了修改,那么你需要手动补参数并保存。如果你完全不想要之前的参数了,直接点击(重新生成)

请确保你每次修改参数后点击保存按钮

S: 最佳视觉效果

调整工具窗口宽度至610+像素,达到最佳视觉效果

Q: Origin等请求头失效

由于sun.net.www.protocol.http.HttpURLConnection设置了受限标头,以下一些请求头如果想使用,则需要给IDEA配置vm参数

private static final String[] restrictedHeaders = {
        /* Restricted by XMLHttpRequest2 */
        //"Accept-Charset",
        //"Accept-Encoding",
        "Access-Control-Request-Headers",
        "Access-Control-Request-Method",
        "Connection", /* close is allowed */
        "Content-Length",
        //"Cookie",
        //"Cookie2",
        "Content-Transfer-Encoding",
        //"Date",
        //"Expect",
        "Host",
        "Keep-Alive",
        "Origin",
        // "Referer",
        // "TE",
        "Trailer",
        "Transfer-Encoding",
        "Upgrade",
        //"User-Agent",
        "Via"
    };

点击 help->Edit Custom Vm Options...,在 idea.vmoptions(linux) 或者 idea64.exe.vmoptions (windows)中加入加入如下配置

-Dsun.net.http.allowRestrictedHeaders=true

Q: 操作按钮不可见

点击 Options 勾选 Show Toolbar

Q: 生成参数、跳转错乱

A: controller 代码里面不要出现方法名一样的方法

Q: 新 UI 下 SearchEveryWhere 中 Tab 无法显示

A: 暂时先把 IDEA 的主题换成Dark,操作步骤:打开SearchEveryWhere->输入theme->回车或者确定切换主题至Dark,这是 IDEA 主题导致的 bug。

Q: 左侧图标不显示

左侧图标不显示。

A: 打开配置 setting->Editor->Gutter icons->show gutter icon

B: 检查是否安装了 forestx 插件,该插件目前会引起 Fast Request 插件图标不展示

Q: 输入参数后调用 API 发现无效

A: 插件版本小于 2022.2.3 的在 table 控件编辑某个值的时候,需要在编辑完值后先在空白处点一下,再发送请求,该问题在 2022.2.3+版本得到修复

Q: 为啥插件没反应

A: 请先完善配置,参考快速开始,再点击图标

Q: 点击图标后 idea 卡死

A: 你设计的实体类嵌套递归,插件不支持,比如说 A 实体类有 B 实体类的属性,B 实体类有 A 实体类的属性

public class A {
    private B b;
    private int xx;
}
public class B {
    private A a;
    private String xx;
}

以上这种情况如果你不需要 B 属性,那么你可以在生成的时候手动给 B 加一个 static 属性

public class A {
    private static B b;
    private int xx;
}