2010-10-03 8 views
1

Quelqu'un peut-il vérifier une chaîne de réponse xml. L'utilisateur a déclaré que ce n'est pas compatible avec XML et a un mauvais en-tête. Quand je fais une source de vue, je vois cevérifier ma réponse xml

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<response><task_no_added>54</task_no_added><errorMessage></errorMessage></response> 

http://itpscan.info/XML/add_item.php

est d'info en-tête ici trouve dans Firebug ...

Response Headersview source 
Date Sun, 03 Oct 2010 22:50:03 GMT 
Server Apache mod_fcgid/2.3.5 mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 
X-Powered-By PHP/5.2.13 
Keep-Alive timeout=5, max=100 
Connection Keep-Alive 
Transfer-Encoding chunked 
Content-Type text/html 
Request Headersview source 
Host itpscan.info 
User-Agent Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.10) Gecko/20100914 Firefox/3.6.10 
Accept text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
Accept-Language en-us,en;q=0.5 
Accept-Encoding gzip,deflate 
Accept-Charset ISO-8859-1,utf-8;q=0.7,*;q=0.7 
Keep-Alive 115 
Connection keep-alive 
Referer http://xxxxxx.info/XML/add_item.php 

Addition: J'ai essayé d'ajouter un en-tête xml, nous verra si cela fonctionne maintenant ...

header ("Content-Type:text/xml"); 
$xml_writer = new XMLWriter(); 
$xml_writer->openMemory(); 
$xml_writer->startDocument('1.0', 'UTF-8', 'yes'); 
$xml_writer->startElement('response');  
+2

Lorsqu'un utilisateur vous donne un tel rapport d'erreur, remettez-le et dites-lui de vous donner des détails. – skaffman

+0

ils disent quelque chose dans l'en-tête HTTP est en train de leur lecteur XML. Aussi autonome était un problème, mais résolu maintenant. –

Répondre

1

Ceci est un fichier XML valide. Vous pouvez verify it yourself here.

logiciel de votre utilisateur peut être déclenché par l'attribut d'en-tête standalone, ce qui est rare, mais legal:

Les déclarations de balisage peuvent affecter le contenu du document, transmis à partir d'un processeur XML à une application; les exemples sont les attributs par défaut et les déclarations d'entité. La déclaration de document autonome , qui peut apparaître comme une composante de la déclaration XML, les signaux ou non il y a de telles déclarations [...]

Vous pouvez simplement le supprimer, ou convaincre votre sérialiseur de ne pas générer si votre utilisateur est implacable.

EDIT: En regardant les en-têtes HTTP, je vais essayer un Content-Type de text/xml plutôt que text/html (tout en supposant que le XML que vous avez envoyé vous envoyez dans le corps).

+0

Merci. Qu'en est-il des en-têtes HTP, je n'en parle pas beaucoup ... –

+0

@hank: Où, dans le tinyurl? Je ne suis pas les redirecteurs d'URL d'utilisateurs non vérifiés - aucune infraction prévue. Essayez de poster les en-têtes dans votre corps de question. –

+0

aucune infraction prise. J'ai posté des en-têtes comme vu dans firebug. Peut-être que le type de contenu est faux? –