Je bascule mon code XML en JSON.
Mais je ne trouve pas comment obtenir une chaîne JSON à partir d'une URL donnée.
L'URL ressemble à ceci: " https://api.facebook.com/method/fql.query?query=.....&format=json "
J'avais utilisé XDocuments auparavant, là je pourrais utiliser la méthode de chargement:
XDocument doc = XDocument.load("URL");
Quel est l'équivalent de cette méthode pour JSON? J'utilise JSON.NET.
Utilisez la classe WebClient
dans System.Net
:
var json = new WebClient().DownloadString("url");
N'oubliez pas que WebClient
est IDisposable
, vous ajouterez donc probablement une instruction using
dans le code de production. Cela ressemblerait à:
using (WebClient wc = new WebClient())
{
var json = wc.DownloadString("url");
}
AFAIK JSON.Net ne fournit pas de fonctionnalité pour lire à partir d'une URL. Donc, vous devez le faire en deux étapes:
using (var webClient = new System.Net.WebClient()) {
var json = webClient.DownloadString(URL);
// Now parse with JSON.Net
}
Si vous utilisez .NET 4.5 et souhaitez utiliser async, vous pouvez utiliser HttpClient
dans System.Net.Http
:
using (var httpClient = new HttpClient())
{
var json = await httpClient.GetStringAsync("url");
// Now parse with JSON.Net
}