我正在使用xamarin表单处理移动应用程序,应用程序需要从api获取一些数据,所以我使用http客户端来实现它。 因此,http请求在Android和Windows Phone上运行正常,但是当我尝试在IOS上调试请求时,我得到一个错误,当然没有显示异常详细信息..但是在调试时我发现错误在编码请求内容时发生,因此它在IOS情况下返回NULL,同时它返回android和windows phone情况下的编码内容。 我使用不同的方式发送resquest并对请求进行编码,但结果相同。 以下是我的试验: http请求code1:
var values = new Dictionary<string, string>
{
{ "ExpiryDate", dateAndTime.ToString() },
{ "IsHijri", "false" },
{ "CR_No", CetNum.Text }
};
var content = new FormUrlEncodedContent(values);
var response = await client2.PostAsync("https://XXXXXXX.com/api/XXXXXX", content);
这是请求代码试用2:
var myContent = JsonConvert.SerializeObject(cert);
var buffer = System.Text.Encoding.UTF8.GetBytes(myContent); var byteContent = new ByteArrayContent(buffer); byteContent.Headers.ContentType = new MediaTypeHeaderValue("application/json"); var Response = await client.PostAsync("api/PlaPla/PlaPla",
byteContent).ConfigureAwait(假); string res = await Response.Content.ReadAsStringAsync();
这些试验工作正常并获得用其他平台编码的内容,但不是IOS。
我得到的错误消息是System.NullReferenceException:Object 引用未设置为objec的实例
那么,我是否应该使用不同的方式在ios场景中发送http请求?任何帮助?感谢。