从httpclient的响应字符串中获取键的值

时间:2019-04-28 22:07:07

标签: c# httpclient dotnet-httpclient

我正在尝试使用System.Net.Http从发布请求中获取值。键以字典的字符串表示形式返回。

我的响应字符串看起来像这样,字典的字符串表示形式:

"{\"primaryKey\": \"hereIsMyKeyValue\",\"secondaryKey\":\"jsfidjsi\"}"

相关代码

这就是我现在正在进行的发帖请求并阅读我的回复

var response = await httpClient.PostAsync(url, content);

var responseString = await response.Content.ReadAsStringAsync();

我尝试过的事情

我尝试使用.Trim()来摆脱转义字符\。但这无能为力。

   var test = responseString.Trim();

如何获取字符串表示形式的那些键的内容?还是我试图通过操纵response.Content.ReadAsStringAsync()返回的内容来解决问题?

1 个答案:

答案 0 :(得分:2)

对您要尝试的内容进行一些假设,

您可能想使用NewtonSoft之类的东西反序列化Json:

class MyDictionaryItem
{
    [JsonProperty("primaryKey")]
    public string PrimaryKey { get; set; }

    [JsonProperty("secondaryKey")]
    public string SecondaryKey { get; set; }
}

var myResult = JsonConvert.DeserializeObject<MyDictionaryItem>(responseString);

然后,您可以作为myResult的成员来访问所需的值。