I have some XML data like this to post on 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>
and my code for post the request is like this in C#:
string reqBody = xmlData;
var result = HttpPost(ApiUrl, xmlData, "text/xml");
How can I set the XML data as reqBody
for post it on httpPost?
Simle code for Http Post request using HttpClient:
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();
}
}
Examle of using:
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");