如何使用 Charles Proxy 重写工具和正则表达式修改 HTTP 响应主体?

How to modify HTTP response body with Charles Proxy rewrite tool and regex?

我正在尝试使用重写工具/正则表达式更改 Charles 代理的 HTTP 响应主体?响应是 JSON.

所以返回的部分响应 JSON 正文是:

"unavailablePosts": ["AA", "BB"],

而我想要的是:

"unavailablePosts": "XXX",

我尝试像这样设置 Charles 的重写:

所以正则表达式是这样的:

"unavailablePosts": \[(.*)\],

但是...(正如我问的这个问题)它不起作用,即响应正文中没有任何更改。

我相信值之间有一些换行符,要匹配它们,您需要在 : 周围添加 \s*(零个或多个空格)并使用 [\s\S]*?(任何0+ 个字符,但尽可能少,因为 *? 是惰性量词)以匹配 [], 之间的子字符串:

 "unavailablePosts"\s*:\s*\[([\s\S]*?)\],

我有类似的问题。在这种情况下,正则表达式是 ("unavailablePosts":)"[\s\S]*?" 替换值是 "anything"