【问题标题】:How to set a rewrite rule in Charles Proxy, when there is a '?' included?当有“?”时,如何在 Charles Proxy 中设置重写规则包括?
【发布时间】:2012-03-10 20:25:59
【问题描述】:

我正在使用 Chales Proxy,到目前为止它对我帮助很大。为了测试,我使用重写规则来更改路径参数。这工作得很好,只要我不尝试在包含问号的路径上设置重写规则:

类型:路径

网址示例: /get/article/123456/n/20121208/?

重写规则: /? -> /showAdmin=true/?

我的猜测是问号是一个占位符,我不能将其用作匹配值。我试图逃脱它,但它也不起作用。

有人知道我该如何解决吗?提示如何在 Charles 中使用 regEx 也会有所帮助。路径总是一样的。

最好, 克拉斯

【问题讨论】:

    标签: regex proxy rewrite charles-proxy


    【解决方案1】:

    只是把它作为答案,因为它让我发疯。为了使用组,您基本上将正则表达式中的内容括在括号组中,如下所示:

    whatever/(.*)/(.*)\.html

    然后在替换字段中,您将括号组称为 $1、$2 等等,我相信从左到右。

    /whatever/$1/$2.json

    我相信下面发布的 stema 应该可以工作,但如果您尝试使用群组,这就是您的做法。

    【讨论】:

      【解决方案2】:

      问号不是占位符,而是量词。所以,/? 表示匹配零个或一个斜线。

      快速搜索documentation

      可以启用正则表达式支持,为您的匹配提供 Perl 样式的正则表达式。

      那么这应该可以工作

      /\?$
      

      $ 将匹配字符串结尾,如果 ? 也应该在字符串结尾之前匹配,只需将其删除。

      【讨论】:

        猜你喜欢
        • 2020-12-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-01-02
        • 2021-06-26
        • 1970-01-01
        • 2011-03-05
        相关资源
        最近更新 更多