htmlPrepend
在现有响应内容体前面面插入指定内容(仅对响应类型 content-type
包含 html
,且包含响应内容体的状态码(如 200
/500
等)有才效)
⚠️ 注意:204、304 等无响应内容体的请求不受影响
规则语法
txt
pattern htmlPrepend://value [filters...]
参数 | 描述 | 详细文档 |
---|---|---|
pattern | 匹配请求 URL 的表达式 | 匹配模式文档 |
value | 文本或二进制内容,支持以下类型: • 目录/文件路径 • 远程 URL • 内联/内嵌/Values内容 | 操作指令文档 |
filters | 可选过滤器,支持匹配: • 请求URL/方法/头部/内容 • 响应状态码/头部 | 过滤器文档 |
配置示例
内联方式
txt
www.example.com/path htmlPrepend://(Hello) file://(-test-)
www.example.com/path2 htmlPrepend://(Hello) file://(-test-) resType://js
- 请求
https://www.example.com/path/to
响应内容变成html<!DOCTYPE html> Hello-test-
- 请求
https://www.example.com/path2/to
响应内容变成-test-
内嵌/Values方式
txt
``` body.txt
Hello world.
```
www.example.com/path htmlPrepend://{body.txt} file://(-test-)
www.example.com/path2 htmlPrepend://{body.txt} file://(-test-) resType://css
- 请求
https://www.example.com/path/to
响应内容变成html<!DOCTYPE html> Hello world.-test-
- 请求
https://www.example.com/path2/to
响应内容变成-test-
规避不规范的请求
当接口响应类型(Content-Type
)不规范地返回为 text/html
时,可能导致:
- 前端误将接口数据当作 HTML 解析
- 注入内容破坏原始数据结构
- 引发前端解析错误
使用 enable://strictHtml 或 enable://safeHtml 模式保护非 HTML 内容:
txt
www.example.com/path1 htmlPrepend://(test) file://(-test-) enable://strictHtml
www.example.com/path2 htmlPrepend://(test) file://([-test-]) enable://strictHtml
www.example.com/path3 htmlPrepend://(test) file://([-test-]) enable://safeHtml
www.example.com/path4 htmlPrepend://(test) file://(<div>Test</div>) enable://strictHtml
- 请求
https://www.example.com/path1/to
响应内容变成-test-
- 请求
https://www.example.com/path2/to
响应内容变成[-test-]
- 请求
https://www.example.com/path3/to
响应内容变成[-test-]
- 请求
https://www.example.com/path4/to
响应内容变成html<!DOCTYPE html> test<div>Test</div>
safeHtml
/strictHtml
功能参考:enable://safeHtml、lineProps://strictHtml
本地/远程资源
txt
www.example.com/path1 htmlPrepend:///User/xxx/test.txt
www.example.com/path2 htmlPrepend://https://www.xxx.com/xxx/params.txt
# 通过编辑临时文件
www.example.com/path3 htmlPrepend://temp/blank.txt
关联协议
- 在响应内容前面注入内容:reqPrepend
- 替换 HTML 类型的响应内容:htmlBody
- 在 HTML 类型的响应内容后面注入内容:htmlPrepend
- 校验 HTML 内容格式:enable://safeHtml、lineProps://strictHtml