JSoup: demande de réponse JSON

j'utilise JSoup pour authentifier puis me connecter à un site web. Certaines URL ont une réponse JSON (parce qu'une partie du site est en AJAX). JSoup peut-il gérer la réponse JSON ?

Connection.Response doc = Jsoup.connect("...")
                               .data(...)
                               .cookie(...)
                               .header(...)
                               .method(Method.POST)
                               .execute();
String result = doc.body()

Dans mon cas, le corps est "".

  • est-ce parce que JSoup ne sait pas comment gérer JSON ? (offcourse il n'est pas )
  • ou parce qu'il y a une erreur dans ma demande ?

Est-il JSoup comme des bibliothèques pour JSON ?

20
demandé sur Jean-Philippe Encausse 2011-08-20 20:32:31

4 réponses

vous pouvez obtenir JSON ou un autre format de données en utilisant ceci:

// JSON example
String json = Jsoup.connect(url).ignoreContentType(true).execute().body();
34
répondu Anchor 2014-01-16 07:20:57

Essayez Comme Ceci

utiliser en-tête "Accepter: texte / javascript "

 String InboxJson=Jsoup.connect("https://www.fiverr.com/conversations/Json")
                            .timeout(1000000) 
                            .header("Accept", "text/javascript")
                            .userAgent("Mozilla/5.0 (Windows NT 6.1; rv:40.0) Gecko/20100101 Firefox/40.0")
                            .get()
                            .body()
                            .text();
4
répondu Danyial Shahid Ali 2015-10-25 09:46:10

Je ne pense pas que Jsoup exécutera Javascript. Si L'URL fournie renvoie un texte non-html, je crois que Jsoup va simplement l'envelopper dans une étiquette de corps ou quelque chose de similaire.

de cette post pour une suggestion

0
répondu scott 2017-05-23 12:17:54

vous devez utiliser une bibliothèque JSON pour traiter les données JSON.

En voici quelques-uns: Click

0
répondu Zarathustra 2012-11-25 03:20:07