C# Forms:默认值,而不是作为HttpClient实现的AndroidClientHandler
我使用的是一个现有的Xamarin.Forms应用程序,我们需要将API调用集成到外部提供者 为此,我们使用my客户机的自定义HttpClient库 到目前为止,Android HttpClient被设置为C# Forms:默认值,而不是作为HttpClient实现的AndroidClientHandler,c#,android,xamarin,httpclient,httpclienthandler,C#,Android,Xamarin,Httpclient,Httpclienthandler,我使用的是一个现有的Xamarin.Forms应用程序,我们需要将API调用集成到外部提供者 为此,我们使用my客户机的自定义HttpClient库 到目前为止,Android HttpClient被设置为AndroidClientHandler 但是在对提供者的API进行基本调用之后,我们得到了一个“400-错误请求”的回答: 如果我们将安卓HttpClient设置为默认值,那么一切正常 但使用AndroidClientHandler似乎是更好的选择。 因此,您是否有建议调查并确定与Andro
AndroidClientHandler
但是在对提供者的API进行基本调用之后,我们得到了一个“400-错误请求”的回答:
如果我们将安卓HttpClient设置为默认值,那么一切正常
但使用AndroidClientHandler似乎是更好的选择。
因此,您是否有建议调查并确定与AndroidClientHandler相关的问题?使用wireshark或其他工具检查不同的请求,并找出触发400I的原因。我已尝试使用Charles Proxy,但无法解码请求。我将尝试与wireshark进行比较。如果要解码通过SSL的请求内容,请在设备上安装Charles root证书。
HttpContent content = new StringContent(string.Empty);
if (tObject != null)
{
string data = JsonSerializer.Serialize(tObject, new JsonSerializerOptions() { IgnoreNullValues = true, IgnoreReadOnlyProperties = true });
content = new StringContent(data, Encoding.UTF8, "application/json");
}
HttpResponseMessage apiResponse = await _client.PostAsync(route, content);
string responseData = await apiResponse.Content.ReadAsStringAsync();