gpt4 book ai didi

.net - 使用来自 webapi 的 HttpClient 使用 xml

转载 作者:行者123 更新时间:2023-12-04 18:38:01 26 4
gpt4 key购买 nike

我使用 WebClient 从 restfull 服务(.net web api)获取一个 Xml 对象,一切都很好:

using(WebClient client = new WebClient())
{
client.Encoding = UTF8Encoding.UTF8;
client.Headers[HttpRequestHeader.ContentType] = "text/xml";
client.Credentials = // ....;
xmlResult = webClient.DownloadString(url);
}

....

这段代码很好用。我得到一个 Xml 作为字符串返回,每个人都很高兴。

现在,我更改了它,以便它可以与 HttpClient 一起使用,并且我无法返回 Xml - 始终将 json 作为字符串。
using(var handler = new HttpClientHandler() {Credentials = new NetworkCredentials})
using(var client = new HttpClient(handler))
{
var request = new HttpRequestMessage(HttpMethod.Get, url);
request.Headers.Add(HttpRequestHeader.ContentType.ToString(), "text/xml");
returnedXml = client.SendAsync(request).Result.Content.ReadAsStringAsync().Result;
}

我究竟做错了什么?我怎样才能得到我渴望的 Xml?

谢谢

最佳答案

试试这个..

using(var handler = new HttpClientHandler() {Credentials = new NetworkCredentials})
using(var client = new HttpClient(handler))
{
client.DefaultRequestHeaders
.Accept
.Add(new MediaTypeWithQualityHeaderValue("text/xml"));
var request = new HttpRequestMessage(HttpMethod.Get, url);
returnedXml = client.SendAsync(request).Result.Content.ReadAsStringAsync().Result;
}

关于.net - 使用来自 webapi 的 HttpClient 使用 xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31115545/

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