gpt4 book ai didi

c# - 将 JSON 响应流转换为字符串

转载 作者:太空狗 更新时间:2023-10-29 23:59:03 26 4
gpt4 key购买 nike

我正在尝试执行 POST,然后将 JSON 响应读入字符串。

我认为我的问题是我需要将自己的对象传递到 DataContractJsonSerializer 中,但我想知道是否有某种方法可以将响应放入关联数组或某种键/值格式中。

我的 JSON 格式如下:{"license":"AAAA-AAAA-AAAA-AAAA"} 我的代码如下:

using (Stream response = HttpCommands.GetResponseStream(URL, FormatRegistrationPost(name, email)))
{
string output = new StreamReader(response).ReadToEnd();
response.Close();

DataContractJsonSerializer json = new DataContractJsonSerializer(typeof(string));
MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(output));
string results = json.ReadObject(ms) as string;

licenseKey = (string) results.GetType().GetProperty("license").GetValue(results, null);
}

最佳答案

我强烈建议查看 Newtonsoft.Json:

http://james.newtonking.com/pages/json-net.aspx

NuGet:https://www.nuget.org/packages/newtonsoft.json/

将引用添加到您的项目后,您只需在文件顶部包含以下using:

using Newtonsoft.Json.Linq;

然后在您的方法中您可以使用:

var request= (HttpWebRequest)WebRequest.Create("www.example.com/ex.json");
var response = (HttpWebResponse)request.GetResponse();
var rawJson = new StreamReader(response.GetResponseStream()).ReadToEnd();

var json = JObject.Parse(rawJson); //Turns your raw string into a key value lookup
string license_value = json["license"].ToObject<string>();

关于c# - 将 JSON 响应流转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13041970/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com