在使用"System.Text.Json"时,可以通过使用异常处理来处理不知道响应的情况。以下是一个使用"System.Text.Json"解析 JSON 响应的示例代码:
using System;
using System.Net.Http;
using System.Text.Json;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
try
{
// 创建 HttpClient 实例
HttpClient client = new HttpClient();
// 发送 HTTP 请求并获取响应
HttpResponseMessage response = await client.GetAsync("https://api.example.com/data");
// 确保响应成功
response.EnsureSuccessStatusCode();
// 读取响应内容
string responseBody = await response.Content.ReadAsStringAsync();
// 使用 System.Text.Json 解析 JSON 响应
var options = new JsonSerializerOptions
{
PropertyNameCaseInsensitive = true
};
var data = JsonSerializer.Deserialize(responseBody, options);
// 处理解析后的数据
Console.WriteLine($"Name: {data.Name}");
Console.WriteLine($"Age: {data.Age}");
}
catch (HttpRequestException ex)
{
// 处理 HTTP 请求异常
Console.WriteLine($"HTTP 请求异常: {ex.Message}");
}
catch (JsonException ex)
{
// 处理 JSON 解析异常
Console.WriteLine($"JSON 解析异常: {ex.Message}");
}
}
}
class DataModel
{
public string Name { get; set; }
public int Age { get; set; }
}
在上面的代码中,我们使用HttpClient
发送 HTTP 请求,并使用JsonSerializer.Deserialize
方法解析 JSON 响应。如果发生异常,我们使用异常处理来捕获并处理这些异常。