繁体   English   中英

HttpClient PostAsync给我json页面的空结果

[英]HttpClient PostAsync gives me an empty result for json page

我有以下设置:

服务器端

<?php

$array = ...;
header('Content-Type: application/json');
echo json_encode($array);

?>

客户端

在我的iPhone应用程序中,我成功连接到服务器端并解析了json并将其加载到NSDictionary中。

现在,我想在Windows应用程序的C#中执行相同的操作。 我使用了以下测试代码:

public async void PostData(string url, string post) 
{
    HttpClient client = new HttpClient();
    var response = await client.PostAsync(url, new StringContent(post));
    response.EnsureSuccessStatusCode();

    string result = await response.Content.ReadAsStringAsync();
    Debug.WriteLine("RESULT|" + result + "|");
}

我努力了

PostData("http://www.mysite.com", "");

并返回了我网站的html。

但是当我通过访问我的json URL时

PostData("http://www.mysite.com/api/", ""); 

字符串结果始终为空。

我不知道这是怎么回事。 服务器端的某些标头是否错误? 还是为什么我的字符串结果始终为空? 我将如何调试它-请注意,我是Windows开发的新手?

还是有更快的方式将json下载并保存到Windows应用程序中?

多亏了Fiddler,我才发现没有错误,但实际上是一个空字符串作为返回结果。

由于我的PHP实现,在使用Windows设备时返回了空字符串。 问题显然出在服务器端。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM