D'abord l'information d'arrière-plan: J'utilise commons httpclient pour faire une demande d'obtention au serveur. Réponse du serveur une chaîne json. J'analyse la chaîne en utilisant org.json.analyse syntaxique json réponse
Le problème: En fait, tout fonctionne, c'est-à-dire pour les petites réponses (plus petit que 2^31 octets = valeur maximale d'un nombre entier qui limite le getResponseBody et le stringbuilder). J'ai d'autre part une réponse géante (plus de plusieurs Go) et je suis coincé. J'ai essayé d'utiliser le "getResponseBodyAsStream" de httpclient mais la réponse est si grande que mon système se bloque. J'ai essayé d'utiliser un String, un Stringbuilder, même en l'enregistrant dans un fichier.
La question: D'abord, est-ce la bonne approche, si oui, quelle est la meilleure façon de gérer une telle réponse? Si non, comment dois-je procéder?
Que faites-vous avec les données? est-ce que vous l'agrégez en mémoire, ou l'écrivez-vous à une destination? aussi, que signifie "coincé"? ne répond pas, lance une exception, etc ...? – jtahlborn
Je suppose qu'une meilleure question est, pourquoi essayez-vous de renvoyer des Go de données dans une resposne web? – OldProgrammer
Pour mon analyseur JSON personnel, j'utilise un lecteur pour analyser les données. Cela pourrait être un InputStreamReader mais je ne suis pas sûr que cela entraînera des fuites de ressources. De plus, la lib n'est pas complète et doit encore fonctionner (mais la partie JSON fonctionne) – engineercoding