解码 u002522、u002522 和大量反斜杠

Decoding u002522, u002522 and a lot of backslash

我正在使用 WebClient 获取 som 网络请求:

public static string PostHttp(string url, Dictionary<string, string> headers, Dictionary<string, string> postParams)
{
    using (WebClient client = new WebClient())
    {                
        if (headers != null)
        {
            foreach (var header in headers)
            {
                client.Headers.Add(header.Key, header.Value);
            }
        }

        var reqparm = new System.Collections.Specialized.NameValueCollection();

        if (postParams != null)
        {
            foreach (var param in postParams)
            {
                reqparm.Add(param.Key, param.Value);
            }
        }


        byte[] responsebytes = client.UploadValues(url, "POST", reqparm);
        return  Encoding.UTF8.GetString(responsebytes);
    }
}

我在 Visual Studio 中得到类似以下内容:

\\"see_more_cards_id\\",\\"href\\":\\"\\\/page_content_list_view\\\/more\\\/?page_id=200168320060101&start_cursor=\\u00257B\\u002522timeline_cursor\\u002522\\

在 post man 里面看起来更好 我可以做一个 url 解码:

\"see_more_cards_id\",\"href\":\"\\/page_content_list_view\\/more\\/?page_id=200168320060101&start_cursor=\%7B\%22timeline_cursor\%22\%3

在 Chrome 调试器中如下所示:

\"see_more_cards_id\",\"href\":\"\\/page_content_list_view\\/more\\/?page_id=200168320060101&start_cursor=\u00257B\u002522timeline_cursor\u002522\u00253A\u002522timeline_unit\

我要找的是像这样的解码版本:

"see_more_cards_id","href":\"/page_content_list_view/more/?page_id=200168320060101&start_cursor={"timeline_cursor":""timeline_unit:timeline_unit: 1:00000000001564446283:04611686018427387904:091:00000000001564446283:04611686018`427387904:09

我尝试搜索像 u002522 这样的解码字符,但只有非常有限的信息。我发现以下 post 建议使用 Uri.UnescapeDataString 但这并没有解码字符。

Decode chars

\\u002522

这里有很多层。

首先是\转义\。 (这可能只是一个试图提供帮助的调试器。)所以,

\u002522

然后就是\转义为\。所以,

\u002522

然后有\u转义为一个UTF-16编码单元

%22

然后是字节的 % 编码(又名 URL 编码),大概是针对 UTF-8 代码单元

"