我需要从外部域获取json数据。
我使用WebRequest从一个网站获取响应。
代码如下:
var request = WebRequest.Create(url);
string text;
var response = (HttpWebResponse) request.GetResponse();
using (var sr = new StreamReader(response.GetResponseStream()))
{
text = sr.ReadToEnd();
}
有人知道为什么我拿不到json数据吗?
发布于 2010-09-17 02:42:30
您需要显式地询问内容类型。
添加下面这行:
request.ContentType = "application/json; charset=utf-8";
在适当的地方
发布于 2011-03-05 02:06:59
有些API希望您在请求中提供适当的"Accept“头,以获得所需的响应类型。
例如,如果应用编程接口可以返回XML和JSON格式的数据,而您希望返回JSON结果,则需要将HttpWebRequest.Accept
属性设置为"application/json".
HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(requestUri);
httpWebRequest.Method = WebRequestMethods.Http.Get;
httpWebRequest.Accept = "application/json";
https://stackoverflow.com/questions/2108297
复制相似问题