我正在将代码从XML切换到JSON。
但是我找不到如何从给定的URL获取JSON字符串。
URL类似于这样:“https://api.facebook.com/method/fql.query?query=.....&format=json”
以前我使用过XDocuments,在那里我可以使用load方法:
XDocument doc = XDocument.load("URL");
这个方法在 JSON 中有什么等效的替代方法吗?我正在使用 JSON.NET。
我正在将代码从XML切换到JSON。
但是我找不到如何从给定的URL获取JSON字符串。
URL类似于这样:“https://api.facebook.com/method/fql.query?query=.....&format=json”
以前我使用过XDocuments,在那里我可以使用load方法:
XDocument doc = XDocument.load("URL");
这个方法在 JSON 中有什么等效的替代方法吗?我正在使用 JSON.NET。
使用System.Net
中的WebClient
类:
var json = new WebClient().DownloadString("url");
记住 WebClient
是 IDisposable
,所以在生产代码中,你可能会添加一个 using
语句。 示例:
using (WebClient wc = new WebClient())
{
var json = wc.DownloadString("url");
}
据我所知,JSON.Net没有提供读取URL的功能。因此,您需要分为两个步骤完成:
using (var webClient = new System.Net.WebClient()) {
var json = webClient.DownloadString(URL);
// Now parse with JSON.Net
}
System.Net.Http
中的HttpClient
:using (var httpClient = new HttpClient())
{
var json = await httpClient.GetStringAsync("url");
// Now parse with JSON.Net
}
async
的Task
中使用它。 - Si8
var json = wc.DownloadString("url");
放在try-catch
块中,它才对我起作用! - Ghasem