Se encontraron excepciones al publicar XML envuelto en SOAP publicado usando Curl como resultado de un carácter XML no válido

Se encontraron excepciones al publicar XML envuelto en SOAP publicado usando Curl como resultado de un carácter XML no válido

Enviar un archivo XML usando curl da como resultado:

Invalid XML character (Unicode : 0x<integer>)

Intenta resolver el problema.

De acuerdo aesta respuesta SOel problema se resolverá si la versión XML se cambia a 1.1.

Aunque se ha actualizado la versión que reside en el archivo XML:

<?xml version="1.1" encoding="utf-8" standalone="yes"?>

curl parece seguir enviando el XML como versión 1.0.

Segundo intento de resolver el problema.

Otro intento fue cambiar el encabezado que se usa al publicar usando curl de la siguiente manera:

curl -X POST -H "Content-Type: text/xml; charset=utf-8; version=1.1"

Curl parece ignorar esto ya que el resultado indica que se utiliza la versión 1.0 de xml:

* Closing connection #0
<?xml version="1.0" encoding="utf-8"?><soapenv:Envelope

Tercer intento de resolver el problema.

@Ƭᴇcʜιᴇ007 recomendó crear un pequeño archivo XML:

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<soap:Envelope
    xmlns:soap="http://www.w3.org/2001/12/soap-envelope"
    soap:encodingStyle="http://www.w3.org/2001/12/soap-encoding">
    <soap:Body>
        <note>
            <to>Test</to>
        </note>
    </soap:Body>
</soap:Envelope>

valide la sintaxis y posteriormente publíquela:

An invalid XML character (Unicode : 0x<integer>) was found

Cuarto intento de resolver el problema.

De acuerdo aesta respuestael problema no debería ocurrir ya que 0x<integer_greater_than_20>es mayor que 0x20.

Quinto intento de resolver el problema.

¿Qué 0x<integer_greater_than_20>representa? De acuerdo aEsta mesarepresenta caracteres latinos que parecen aceptables.

Sexto intento de resolver el problema.

¿Quizás el archivo XML no es válido? No, según la opción Comprobar sintaxis XML ahora de Notepad++, el XML es válido.

información relacionada