La demande d'affichage de la page
prend peu de temps, et à l'affichage elle lance l'appel à la génération des données qui peut prendre du temps.
Ba non, justement moi ma page HTML de reporting prend du temps, la génération sur le serveur met environ 10s.
Je me suis peut être mal exprimé, voici un exemple très simpliste de ce que je cherche à récupérer:
résultat JSON
{
"result step 1" : 10,
"result step 2" : 20,
"result step 3" : 30,
"final result" : 40,
}
Page html de reporting:
<html>
<bobdy>
<p>Le résultat intermédiaire 1 est 10</p>
<p>Le résultat intermédiaire 2 est 20</p>
<p>Le résultat intermédiaire 3 est 30</p>
<p>Le résultat final est 40</p>
</body>
</html>
Comme tu peux le voir, la réponse JSON et la page HTML de reporting ne peuvent pas être dissociées parce qu'elles sont générées en même temps.
Concrètement, j'ai une page "home.html" qui contient un bouton "Launch Computation".
- Lorsque je clique sur "Launch Computation", ma requête est envoyée au serveur qui doit me retourner le résultat du calcul au format JSON + un reporting HTML.
- J'analyse la réponse HTTP pour lire le JSON et j'affiche en dessous du bouton un paragraphe "Final result is 40" et juste à côté un lien "View Report"
- Lorsqu'on clique sur "View Report", je ne veux surtout pas refaire une requête serveur qui va prendre à nouveau 10s pour renvoyer le même résultat. Je veux juste afficher le contenu HTML que j'ai obtenu lors du 1er appel ("Launch Computation") dans une nouvelle page.
Est-ce qu'il y a moyen de faire ça sachant que j'ai aussi un client en Swing qui a lui aussi un bouton "Launch Computation", qui se comporte comme ma page "home.html" et qui lance le browser par défaut lorsqu'on clique sur "View Report"?
Partager