如何使用 XmlElementAttribute 类在 C# 中发布 XML 数据

问题描述 投票:0回答:1

我有一些像这样的 XML 数据要发布在 httpPost 上:

<logindetail>
<player account="IDR" country="IN" firstName="" lastName="" userName=""
nickName="" tester="1" partnerId="LION8" commonWallet="0"></player>
<partners>
<partner partnerId="" partnerType="0" />
<partner partnerId="" partnerType="1" />
<partner partnerId="" partnerType="1" />
</partners>
</logindetail>

我发布请求的代码在 C# 中是这样的:

string reqBody = xmlData;

var result = HttpPost(ApiUrl, xmlData, "text/xml");

如何将 XML 数据设置为

reqBody
以将其发布到 httpPost 上?

c# .net xml post
1个回答
0
投票

使用 HttpClient 进行 Http Post 请求的简单代码:

using System;
using System.Net.Http;

    async Task<string> HttpPostAsync(string url, string data , string mediaType)
        {
            using (var httpClient = new HttpClient())
            {
                var request = new HttpRequestMessage();

                request.Method = HttpMethod.Post;
                request.RequestUri = new Uri(url);

                request.Content = new StringContent(data, Encoding.UTF8, mediaType);
                var responseMessage = await httpClient.SendAsync(request);

                return await responseMessage.Content.ReadAsStringAsync();
            }

        }

使用示例:

var xmlData = @"<logindetail>
<player account=""IDR"" country=""IN"" firstName="""" lastName="""" userName=""""
nickName="""" tester=""1"" partnerId=""LION8"" commonWallet=""0""></player>
<partners>
<partner partnerId="""" partnerType=""0"" />
<partner partnerId="""" partnerType=""1"" />
<partner partnerId="""" partnerType=""1"" />
</partners>
</logindetail>";

var response = await HttpPostAsync("https://httpbin.org/post", xmlData, "Text/xml");
© www.soinside.com 2019 - 2024. All rights reserved.