Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1115 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  AJAX - Taille maximale de retour

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

AJAX - Taille maximale de retour

n°1472998
paowz
Posté le 09-11-2006 à 14:22:24  profilanswer
 

Bonjour,
 
Je suis confronté à un problème en ajax, j'ai l'impression que lorsque je fais appel à Ajax pour le traitement de données, la valeur de retour renvoyée par le serveur vers la fonction callback ne peut excéder une certaine taille, i.e.4442 octets dans mon cas.
Y a-t-il une limite dans la taille des données que renvoient le serveur vers le client, dans le cas d'AJAX ?
 
Merci bien.
 

mood
Publicité
Posté le 09-11-2006 à 14:22:24  profilanswer
 

n°1473184
dwogsi
Défaillance cérébrale...
Posté le 09-11-2006 à 19:10:02  profilanswer
 

Quand tu fait appel à AJAX? Voudrais-tu parler de XmlHttpRequest?
Parceque "faire appel à Ajax", ça veut pas dire grand chose...
 
Donc si tu parle bien d'XmlHttpRequest, à ce que j'avais lu (si j'y retrouve je post le lien) il n'y a pas de limite, a noter tout de même que c'est de la théorie et que ça peut varier selon les navigateurs.
 
Ca donne quoi sous plusieurs navigateurs? Même chose?

n°1473213
paowz
Posté le 09-11-2006 à 20:34:17  profilanswer
 

Bonsoir,  
 

Citation :

Quand tu fait appel à AJAX? Voudrais-tu parler de XmlHttpRequest?


oui, pour moi AJAX, par abus de langage, signifie l'emploi de XmlHttpRequest et de fichier XML.
 

Citation :

Ca donne quoi sous plusieurs navigateurs? Même chose?


La même chose :S
 
Je pense aussi qu'il n'y a pas de limite de retour, pourquoi y en aurait-il ?
Cela peut-il venir de ma fonction qui traite le retour, ce qu'ils appellent la fonction 'Callback'...allez savoir..
J'ai pas de piste, c'est le seul symptome que j'ai..  :(

n°1473224
dwogsi
Défaillance cérébrale...
Posté le 09-11-2006 à 21:17:18  profilanswer
 

Envois ton code, des fois qu'on y trouve quelque chose de suspect.

n°1473234
paowz
Posté le 09-11-2006 à 21:49:39  profilanswer
 

Donc voici ma fonction de callback qui prend en charge le retour du serveur. Son rôle est d'affecter a des variables, le contenu des blocs XML en fonction du nom de la balise..
Je pense pas qu'elle y soit pour grand chose. En revanche, je pense à autre chose.
Les balises xml ne sont pas affectées par cette troncature, par conséquent la suppression des données s'opèrent avant que je ne les enferme entre balises XML.
Voici la fonction en charge de cela:
 

Code :
  1. function Send_XML($Data_XML){
  2.         $str = '<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?><root>';
  3.        
  4.         foreach($Data_XML as $field => $content){
  5.           $str .= '<'.$field.'>'.str_replace(array("\r","\n","  " ),'',$content).'</'.$field.'>';   
  6.         }               
  7.         $str .= '</root>';
  8.         header("Content-type: text/xml" );
  9.         echo $str;
  10.         exit;
  11.     }


 
 
Fonction de traitement du retour de Serveur:
 

Code :
  1. function ClbFunc(){   
  2.      try{
  3.         if((http.readyState == 4) && (http.status == 200)){
  4.           var root = http.responseXML.documentElement;
  5.           var popupLeft;
  6.           var popupWidth;
  7.           var popupHeight; 
  8.           for(var i=0;i<root.childNodes.length;i++){
  9.             var block = root.childNodes[i].firstChild.nodeValue;
  10.            
  11.             switch(root.childNodes[i].tagName){
  12.            
  13.               case "popupLeft":
  14.                 popupLeft = block;
  15.                 break;
  16.               case "popupWidth":
  17.                 popupWidth = block;
  18.                 break;
  19.               case "popupHeight":
  20.                 popupHeight = block;
  21.                 break;
  22.               case "popup":
  23.                 showfloatie(block,'event','',popupLeft,popupWidth,popupHeight);
  24.                 break;
  25.               case "alert":
  26.                 alert(block.replace("!n","\n" ));
  27.                 break;
  28.               case "redirect":
  29.                 window.location.replace(block);
  30.                 break;
  31.               case "reload":
  32.                 window.location.reload();
  33.                 break;
  34.              
  35.               default:
  36.                 document.getElementById(root.childNodes[i].tagName).innerHTML = block;
  37.                 break;
  38.            
  39.             }
  40.            
  41.  
  42.           }
  43.       }
  44.       }
  45.      catch(e){
  46.               alert(e);
  47.       }
  48.      finally{}
  49.      
  50.   }

n°1473242
paowz
Posté le 09-11-2006 à 22:02:53  profilanswer
 

Correction sur deux post en amont.
Oui, il y a, semblerait-il une différence de comportement entre IE et Moz.
IE alterne affichage complet et [Object Error], Moz alterne affichage partiel et [Object Error]
Je soupconne le jeu de caractères, je suis en train de tester si l'iso-8859-15 n'est pas meilleure..

n°1473741
paowz
Posté le 10-11-2006 à 21:29:48  profilanswer
 

non, c'est pas mieux.
ca y est ? on m'a abandonné?

n°1473789
gooopil
pfiew
Posté le 11-11-2006 à 02:22:16  profilanswer
 

Essaye de voir exactement ce qu'il y a dans http.responseXML ou .responseText. Ca pourrait t'aider à identifier le pb

n°1474262
paowz
Posté le 12-11-2006 à 21:34:00  profilanswer
 

ouep.. je suis dessus ^^ :)


Message édité par paowz le 12-11-2006 à 21:38:33
n°1474284
paowz
Posté le 12-11-2006 à 22:40:48  profilanswer
 

.responseText m'affiche la bonne valeur sur les deux navigateurs dans une boîte "alert". C'est dans le traitement de la fonction Callback que ca déconne sur Mozilla  :??:  
On dirait que cette ligne:

Code :
  1. var block = root.childNodes[i].firstChild.nodeValue;


.. n'affecte pas toutes les données à la variable block sur Mozilla, tandis que si IE, ca le fait..
'Comprends pas  :??:  :??:  :??:  :??:  
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  AJAX - Taille maximale de retour

 

Sujets relatifs
Contrôle formulaire côté serveur / retour sur erreur?[DOM/javascript] Focus sur la page mère (retour arrière)
[AJAX] Comment gérer les clients ? (jeu multi)Colonne fixe dans un tableau et retour chariot.
[PHP/Ajax/XSL/CSS/Etc] Explorateur Webproblème taille police IE Firefox
Un bon livre sur AJAX en français?Ajax en asychrone
Problème de retour chariot dans mon cssVérifier qu'un site répond (en Javascript - AJAX ?)
Plus de sujets relatifs à : AJAX - Taille maximale de retour


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR