我正在做简单的客户端请求,以检查我的服务器是否在我的Android设备中正常工作。以下是我的代码。我正在使用HttpClient
,因为它是使用Xamarin框架的PCL项目。
机器人:
var client = new System.Net.Http.HttpClient(new HttpClientHandler());
client.BaseAddress = new Uri(App.BaseUrl);
var response = client.PostAsync(App.TestApi, new StringContent("")).Result;
if (response != null)
{
var responseString = response.Content;
string responseBody = responseString.ReadAsStringAsync().Result;
}
服务器:
[HttpPost]
[Route("testapi/test")]
public HttpResponseMessage TestApi()
{
Log.WriteLog("testapi/test");
return Request.CreateResponse(HttpStatusCode.OK, "Success");
}
我没有发布任何数据。首先我尝试在服务器和客户端获取请求我得到了相同的HTML响应,然后我改为POST,仍然是相同的HTML响应而不是“成功”
当我从RestClient尝试相同的请求时,它返回“成功”作为响应。但是在移动设备而不是返回“成功”消息时,HTML字符串将作为响应返回。我已经做了很多这样的请求,但是这个特殊的行为是这样的。这可能很简单,但我不知道如何搜索它。
响应:
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<!-- BEGIN PAGE SPINNER -->
<!-- BEGIN ACTUAL CONTENT -->
<!-- END ACTUAL CONTENT -->
<script>
</script>
</div>
<!-- END QUICK SIDEBAR -->
<script type="text/javascript">
</script>
<script></script>
<script type="text/javascript">
</script>
<script></script>
<script></script>
<script>
</script>
<script type="text/javascript">
</script>
<script>
jQuery(document).ready(function () {
});
</script>
</body>
</html>
我发现的另一件事是I have two servers, in one server I am getting "Success" response in device properly. But from another server I am not getting. Is it something to do with server setup
?