RewritePlugin

重写请求。

开发人员代理重写传入 API 请求的命令提示符的屏幕截图。

插件实例定义

{
  "name": "RewritePlugin",
  "enabled": true,
  "pluginPath": "~appFolder/plugins/dev-proxy-plugins.dll",
  "configSection": "rewritePlugin"
}

配置示例

{
  "rewritePlugin": {
    "rewritesFile": "rewrites.json"
  }
}

配置属性

properties 说明 默认
rewritesFile 包含重写定义的文件的路径 rewrites.json

命令行选项

重写文件示例

下面是重写规则的示例。

重写从 HTTP 到 HTTPS 的所有请求

重写从 HTTP 到 HTTPS 的所有请求。 在此上下文中, 所有 请求都意味着使用开发代理或 RewritePlugin 配置的所有请求。

{
  "rewrites": [
    {
      "in": {
        "url": "^http://(.*)"
      },
      "out": {
        "url": "https://$1"
      }
    }
  ]
}

模拟文件属性

properties 描述 必须
rewrites 重写对象的数组,这些对象定义重写规则列表,重写Plugin 应用于它截获的请求

重写对象

每个重写规则具有以下属性:

properties 描述 必须
in 重写模式 以匹配传入请求。
out 重写模式 以重写请求

注解

如果重写Plugin 截获的请求与模式中定义的所有属性不匹配,插件不会将重写规则应用于请求。

重写模式

每个重写模式具有以下属性:

properties 描述 必须 默认值 示例值
url 插件应用于 URL 的正则表达式。 ^http://(.*)

注解

如果在模式中的正则表达式中使用捕获组,则可以在 out 模式中引用它们。 例如,如果要重写 http://example.com/foohttps://example.com/foo,可以使用以下重写规则:

{
  "in": {
    "url": "^http://(.*)"
  },
  "out": {
    "url": "https://$1"
  }
}