mirror of
https://github.com/avwo/whistle.git
synced 2026-10-17 05:31:04 +08:00
104 lines
4.3 KiB
Plaintext
104 lines
4.3 KiB
Plaintext
/redirect/ redirect://http://test.whistlejs.com
|
|
rf1.w2.org rulesFile://{rulesFile.js} file://{rulesFile.js}
|
|
rf2.w2.org rulesFile://{rulesFile.txt} file://{rulesFile.txt}
|
|
rf3.w2.org rulesFile://{rulesFile2.js} file://{test3.json}
|
|
delete.test.whistlejs.com reqHeaders://(x-delete-req=test-req&x-delete-all=all) resHeaders://(x-delete-res=test-res&x-delete-all=all) filter://https
|
|
delete1.test.whistlejs.com reqHeaders://(x-delete-req=test-req&x-delete-all=all) resHeaders://(x-delete-res=test-res&x-delete-all=all) filter://https
|
|
https://tp.w2.org/index.html test://global
|
|
tp.w2.org 127.0.0.1:5566 filter://https
|
|
test.whistlejs.com/ups.html filter://https urlParams://(rule=ws1.test.whistlejs.com)
|
|
wss://test.whistlejs.com/index2.html?abc=321 filter://https params://(rule=ws1.test.whistlejs.com)
|
|
|
|
reqscript.w2.org reqScript://{reqScript.js} resScript://{resScript.js}
|
|
|
|
ws://status.whistlejs.com status://101
|
|
tunnel://127.0.0.1:18080 filter://https xproxy://127.0.0.1:19999
|
|
http://127.0.0.1:6666/abc.htm 127.0.0.1:18080
|
|
test.internal.path.com proxy://127.0.0.1:18080
|
|
|
|
%pipe-ws=test1
|
|
%pipe-ws=test2
|
|
%pipe-http=test1
|
|
%pipe-http=test2
|
|
%pipe-tunnel=test1
|
|
%pipe-tunnel=test2
|
|
%test1=test1
|
|
%test1=test2
|
|
%test2=test1
|
|
%test2=test2
|
|
%test3=test1
|
|
%test3=test2
|
|
%test32=test1
|
|
%test32=test2
|
|
|
|
http://test1.pass.through.com/index.html pass://passThrough 127.0.0.1:18080 includeFilter://clientIp:3.3.5.5
|
|
http://test2.pass.through.com/index.html pass://passThrough 127.0.0.1:18080 includeFilter://reqH.x-whistle-client-id:avenwu-test-id
|
|
http://test3.pass.through.com/index.html pass://passThrough 127.0.0.1:18080 includeFilter://remoteAddress:6.6.6.6
|
|
http://test-*.pass.through.com/index.html pass://passThrough 127.0.0.1:18080
|
|
|
|
params.test.whistlejs.com/index.html resMerge://(resMerge=test) resType://js
|
|
weinre1.test2.whistlejs.com:1234 weinre://xxx file://(hello) log://test resType://html enable://capture ignore://plugin
|
|
weinre1.test2.whistlejs.com weinre://xxx file://(hello) log://test resType://js enable://capture ignore://plugin
|
|
|
|
filter.com enable://capture
|
|
filter.com/index.html file://({"ec":0}) excludeFilter://m:post excludeFilter://m:/delete/
|
|
filter.com/index.html file://({"ec":1}) includeFilter://m:delete includeFilter://b:test
|
|
filter.com/index.html file://({"ec":2}) includeFilter://b:555 excludeFilter://reqH:x-test=/\d+/
|
|
filter.com/index.html file://({"ec":3}) excludeFilter://h:x-test=/\d+/
|
|
filter.com/index.html file://({"ec":4})
|
|
|
|
filter2.com/test.html file://({"ec":123}) includeFilter:///abc/
|
|
filter2.com/test.html file://({"ec":321}) excludeFilter:///cba/
|
|
filter2.com/test.html file://({"ec":333})
|
|
|
|
1.tps.whistlejs.com file://() enable://capture resAppend://`{${url.query.name}}`
|
|
2.tps.whistlejs.com resScript://{tps.rules} rawfile://{rawFile2.js} enable://capture
|
|
line`
|
|
jsbody.whistlejs.com resType://js jsBody://(1) jsBody://(2)
|
|
jsPrepend://(-1) jsPrepend://(-2) jsAppend://(3) jsAppend://(4)
|
|
file://(0)
|
|
`
|
|
jsbody2.whistlejs.com resType://html jsPrepend://http://1 jsAppend://https://2 file://(0) disable://keepAlive
|
|
http://127.0.0.1:18080/xhost.html xhost://127.0.0.1:37621
|
|
http://127.0.0.1:18080/xproxy.html xproxy://127.0.0.1:37621 enable://showHost
|
|
|
|
line`
|
|
prependhtml.whistlejs.com resType://html htmlBody://(1) htmlBody://(2)
|
|
htmlPrepend://(-1) htmlPrepend://(-2) htmlAppend://(3) htmlAppend://(4)
|
|
file://(0)
|
|
`
|
|
|
|
``` range.txt
|
|
0123456789
|
|
```
|
|
range1.whistlejs.com file://{range.txt}
|
|
range2.whistlejs.com whistle.test2://
|
|
headerreplace.plugin.whistlejs.com headerReplace://req.host:headerreplace.=&/Plugin/i=test headerReplace://res.set-cookie:test=abc resHeaders://(set-cookie=test&set-cookie=test222)
|
|
|
|
**/wildcard5/_____/** file://({"ec":"$2"})
|
|
***.test.wildcard5.com file://({"ec":0}) resType://json enable://capture
|
|
|
|
``` w1.json
|
|
list[10]: `a\rb\nc`
|
|
list[20]: 123
|
|
list[30]: "123"
|
|
list[40].a: "123"
|
|
```
|
|
.test.wildcard5.com resMerge://{w1.json}
|
|
|
|
/testx.whistlejs.com/ enable://capture
|
|
|
|
``` test.txt
|
|
Default
|
|
```
|
|
|
|
default.key.test.w2.org/test file://{test.txt}
|
|
htt*://wilcardx.wd* file://({"ec":"x"})
|
|
h*t*p://wilcardy.wd*.w2.org file://({"ec":"y"})
|
|
enable://capture ***.wilcardz.wd*.w2.org
|
|
h*t*p*://***.wilcardz.wd*.w2.org file://({"ec":"z"})
|
|
|
|
http://sep.path.test.w2.org/.././../index.html file://({"ec":"sep"})
|
|
|
|
http://sep1.path.test.w2.org/.././../index.html?doNotParseJson file://{notExist.test} resBody://{notExist.test2} excludeFilter://b:test
|