[英]HttpClient.PostAsync Xamarin.Android C# wrong response
我正在編寫一個Xamarin.Android應用程序,該應用程序通過ADAL身份驗證將數據發布到Net Core Web應用程序。 問題在於已設置API控制器,因此它不需要身份驗證([AllowAnonymous]),但是我的httpClient.PostAsync()方法之一(只有其中之一)會使用“ Microsoft登錄”頁面進行響應。 我嘗試使用WebClient.UploadString(),並且響應是同一登錄頁面。 我正在從UWP移植此應用程序,並且相同的代碼在這里可以正常工作。
編輯:添加一些代碼以獲取更多信息。 問題是response.IsSuccessStatusCode為true,但是responseString包含Microsoft登錄頁,但應該返回json數據。
HttpResponseMessage response;
try
{
response = await httpClient.PostAsync(url, new System.Net.Http.StringContent(JsonConvert.SerializeObject(data), System.Text.Encoding.UTF8, "application/json"));
}
catch (Exception ex)
{
return result;
}
if (response.IsSuccessStatusCode)
{
var responseString = await response.Content.ReadAsStringAsync();
try
{
//parsing the response
}
catch (Exception)
{
//response was incorrect
}
}
嘗試這個 :
HttpContent content = response.Content;
var json = await content.ReadAsStringAsync();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.