Oct 12 2023 09:15 AM - edited Oct 12 2023 09:23 AM
I am currently developing a .Net MAUI application where I am making an HTTP call. The peculiar issue I am facing is that the function works perfectly fine on Windows, but when I attempt to execute it on my Local Android Device, it throws an exception after line var response = await client.PostAsync(url, content);
> "System.ObjectDisposedException: Cannot access a closed Stream."
```
public async static Task InsertParts(IEnumerable<PartDTO> partsToReport)
{
using (HttpClient client = GetClient())
{
AddAuthorizationHeader(client);
string url = $"{Url}/endpoint";
string jsonData = JsonSerializer.Serialize(partsToReport);
HttpContent content = new StringContent(jsonData, Encoding.UTF8, "application/json");
var response = await client.PostAsync(url, content);
if (!(response.IsSuccessStatusCode))
{
throw new Exception($"Failed to insert parts: {response.ReasonPhrase}");
}
}
}
```
```
public static HttpClient GetClient()
{
#if DEBUG
HttpClientHandler insecureHandler = new HttpClientHandler();
insecureHandler.ServerCertificateCustomValidationCallback = HttpClientHandler.DangerousAcceptAnyServerCertificateValidator;
return new HttpClient(insecureHandler);
#else
return new HttpClient();
#endif
}
```
GET and DELETE works on both platforms
The Post operation like this works on both platforms
> HttpResponseMessage response = await client.PostAsync($"{Url}/inventory/{id}/{destination}", null);
but when I try to put content in the request then it does not work on android but works in Windows.
Oct 12 2023 12:10 PM
SolutionMar 17 2024 07:21 AM
@Dragon_Slayer Thanks my Problem resolved
Oct 12 2023 12:10 PM
Solution