【问题标题】:How to decode URL in APIM policy如何在 APIM 策略中解码 URL
【发布时间】:2020-08-07 14:34:04
【问题描述】:

我想解码 URL 中的查询参数。 我将查询参数值传递为

 "somevalue%"

但是当我获取参数的值时,它会显示为

"somevalue%25"

我只想将值设为“somevalue%”。 目前我正在使用 Replace ,但我想要一些解码方法。

谢谢。

【问题讨论】:

    标签: azure api azure-api-management api-management apim


    【解决方案1】:

    您可以为此使用System.Net.WebUtility.UrlDecode

        <trace source="original">
            <message>@(context.Request.Url.Query.GetValueOrDefault("parm"))</message>
        </trace>
        <trace source="converted">
            <message>@(System.Net.WebUtility.UrlDecode(context.Request.Url.Query.GetValueOrDefault("parm")))</message>
        </trace>
    

    在跟踪中,您会看到如下结果:

    trace (0 ms)
    {
        "message": "Expression was successfully evaluated.",
        "expression": "context.Request.Url.Query.GetValueOrDefault(\"parm\")",
        "value": "somevalue%25"
    }
    original (0 ms)
    "somevalue%25"
    
    trace (3 ms)
    {
        "message": "Expression was successfully evaluated.",
        "expression": "System.Net.WebUtility.UrlDecode(context.Request.Url.Query.GetValueOrDefault(\"parm\"))",
        "value": "somevalue%"
    }
    converted (0 ms)
    "somevalue%"
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-06-16
      • 2020-10-29
      • 1970-01-01
      • 2018-12-18
      • 2017-08-28
      • 2022-08-16
      • 2019-06-01
      • 1970-01-01
      相关资源
      最近更新 更多