val*_*eru 2 c# json dotnet-httpclient
我有一个方法ReadJsonUrl获取一个url(字符串地址(例如:https ://www.ah.nl/service/rest/delegate?url=%2Fproducten%2Fproduct%2Fwi224732%2Fsmiths-nibb-it-happy- ones-kruis-rond-paprika))到JSON文件.
此方法读取JSON并在控制台中输出一些数据.
但问题是产品的描述输出如
Smiths Nibb-it hap-py on-es kruis-rond pa-pri-ka
但如果我在我的浏览器中检查JSON它会显示
史密斯Nibb-它快乐的kruis-rond辣椒粉
这就是我想要它打印的方式.
我认为问题是,请求是使用0px x 0xx分辨率浏览器完成的,因此它会返回分开的单词以使其可读.如果我使我的浏览器非常小,那么它也会用破折号显示描述.我在我的代码中添加了一个用户代理,但是没有用.
有谁知道如何解决这个问题?
我的代码:
public static async Task<object> ReadJsonUrl(string address)
{
using (HttpClient client = new HttpClient())
{
client.DefaultRequestHeaders.Add("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36");
HttpResponseMessage response = await client.GetAsync(address);
var content = await response.Content.ReadAsStringAsync();
//JObject obj = JObject.Parse(content);
var data = Empty.FromJson(content);
var product = data.Embedded.Lanes[4].Embedded.Items[0].Embedded.Product;
Console.WriteLine(product.Id);
Console.WriteLine(product.Description);
Console.WriteLine(product.PriceLabel.Now);
Console.WriteLine(product.Availability.Label);
Console.WriteLine("-------------------------------------");
System.Threading.Thread.Sleep(5000);
//the return value is for later use
return product;
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
143 次 |
| 最近记录: |