/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:8080 filter://https xproxy://127.0.0.1:19999 http://127.0.0.1:6666/abc.htm 127.0.0.1:8080 test.internal.path.com proxy://127.0.0.1:8080 %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 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:8080/xhost.html xhost://127.0.0.1:37621 http://127.0.0.1:8080/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