cómo comprobar si una respuesta está en formato xml en lugar de HTML?

Estoy trabajando con un servidor que siempre me envía XML responde. Pero a veces cuando el servidor es la falta o algo que me informa acerca de ello mediante el envío de una página HTML (sólo una página html informar sobre el error), pero no esperaba que mi analizador de XML y se estrelló.
Estoy utilizando DefaultHttpClient () y enviar cabecera como mHttpRequest.setHeader("Accept", "text/xml");
Entonces, ¿cuál es la forma correcta de asegurar que tengo XML (u otro formato específico) respuesta?

3 Solutions collect form web for “cómo comprobar si una respuesta está en formato xml en lugar de HTML?”

Como sugirió Kristian, vea si proporciona un Content-Type diferente cuando se emite HTML. A falta de que yo buscaría una línea <?xml... , como apposed a un doctype o lo que sea en la página HTML.

¿Puede comprobar el encabezado del tipo de contenido en la respuesta?

Algo así como (si entiendo correctamente la documentación de Android ):

 "text/xml".equals(httpResponse.getEntity().getContentType().getValue()); 

Cada XML contiene el descriptor de documento <?xml version="1.0" encoding="utf-8"?> En el principio. Puede comprobarlo antes de analizarlo.

Sin embargo, creo que necesita un poco de manipulación de errores y validación de resultados en su analizador. La red no es un entorno seguro: puede obtener fácilmente un XML interrumpido, malformado o incluso forjado de la red. El analizador bueno debe detectar eso y divulgar errores correspondientes, no apenas choque.

  • Implementación de la paginación en formato de libro HTML
  • Error: Error al analizar XML: no bien formado (símbolo no válido) ...?
  • ¿Cómo extracto el texto de un xml anidado usando xmlpullparser en android?
  • Custom Switch - el tamaño de la pista y el selector no funcionan por debajo de 21 API
  • Android: textColor del botón deshabilitado en el selector no se muestra?
  • Selector xml de Android para diseños
  • Error de xml de la gaveta de la navegación
  • El componente personalizado de Android funciona bien en tiempo de ejecución, pero no funciona en tiempo de diseño
  • ¿Cómo agregar una vista personalizada dentro de otra vista personalizada?
  • La vinculación de datos de Android pasa los argumentos al método onClick
  • La imagen no aparece en HTC One M8
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.