Esta página ha sido traducida del inglés por la comunidad. Aprende más y únete a la comunidad de MDN Web Docs.

View in English Always switch to English

XMLHttpRequest

Baseline
Widely available
*

This feature is well established and works across many devices and browser versions. It’s been available across browsers since julio de 2015.

* Some parts of this feature may have varying levels of support.

Nota: This feature is available in Web Workers, except for Service Workers.

Los objetos XMLHttpRequest (XHR) se usan para interactuar con servidores. Permiten recuperar datos de una URL sin necesidad de recargar la página completa, lo que hace posible actualizar solo una parte de la página web sin interrumpir la actividad del usuario.

EventTarget XMLHttpRequestEventTarget XMLHttpRequest

A pesar de su nombre, XMLHttpRequest puede utilizarse para obtener cualquier tipo de datos, no solo XML.

Si tu comunicación necesita recibir datos de eventos o de mensajes desde un servidor, considera usar eventos enviados por el servidor a través de la interfaz EventSource. Para una comunicación bidireccional simultánea (full-duplex), WebSockets puede ser una mejor opción.

Constructor

XMLHttpRequest()

El constructor inicializa un XMLHttpRequest. Debe llamarse antes de realizar cualquier otra llamada a un método.

Propiedades de instancia

Esta interfaz también hereda las propiedades de XMLHttpRequestEventTarget y de EventTarget.

XMLHttpRequest.readyState Read only

Devuelve un número que representa el estado de la solicitud.

XMLHttpRequest.response Read only

Devuelve un ArrayBuffer, un Blob, un Document, un objeto de JavaScript o una cadena, según el valor de XMLHttpRequest.responseType, que contiene el cuerpo de la entidad de la respuesta.

XMLHttpRequest.responseText Read only

Devuelve una cadena que contiene la respuesta a la solicitud como texto, o null si la solicitud no tuvo éxito o aún no se ha enviado.

XMLHttpRequest.responseType

Especifica el tipo de la respuesta.

XMLHttpRequest.responseURL Read only

Devuelve la URL serializada de la respuesta, o una cadena vacía si la URL es nula.

XMLHttpRequest.responseXML Read only

Devuelve un Document con la respuesta a la solicitud, o null si la solicitud no tuvo éxito, aún no se ha enviado o no se puede analizar como XML o HTML. No está disponible en Web Workers.

XMLHttpRequest.status Read only

Devuelve el código de estado de respuesta HTTP de la solicitud.

XMLHttpRequest.statusText Read only

Devuelve una cadena que contiene el mensaje de estado de la respuesta enviado por el servidor HTTP. A diferencia de XMLHttpRequest.status, esto incluye el texto completo del mensaje de respuesta (por ejemplo, "OK").

Nota: Según la especificación de HTTP/2 RFC 7540, sección 8.1.2.4: Response Pseudo-Header Fields, HTTP/2 no define una forma de transmitir la versión o la frase de razón que se incluyen en la línea de estado de HTTP/1.1.

XMLHttpRequest.timeout

El tiempo en milisegundos que puede tardar una solicitud antes de ser cancelada automáticamente.

XMLHttpRequest.upload Read only

Un XMLHttpRequestUpload que representa el proceso de carga.

XMLHttpRequest.withCredentials

Devuelve true si las solicitudes Access-Control entre sitios deben hacerse usando credenciales, como cookies o cabeceras de autorización; de lo contrario, devuelve false.

Propiedades no estándar

XMLHttpRequest.mozAnon Read only

Un booleano. Si es true, la solicitud se enviará sin cookies ni cabeceras de autenticación.

XMLHttpRequest.mozSystem Read only

Un booleano. Si es true, no se aplicará la política del mismo origen a la solicitud.

Métodos de instancia

XMLHttpRequest.abort()

Cancela la solicitud si ya se ha enviado.

XMLHttpRequest.getAllResponseHeaders()

Devuelve todas las cabeceras de respuesta, separadas por CRLF, como una cadena de texto, o null si no se ha recibido ninguna respuesta.

XMLHttpRequest.getResponseHeader()

Devuelve la cadena que contiene el texto de la cabecera indicada, o null si aún no se ha recibido la respuesta o si la cabecera no existe en ella.

XMLHttpRequest.open()

Inicializa una solicitud.

XMLHttpRequest.overrideMimeType()

Sobrescribe el tipo MIME que devuelve el servidor.

XMLHttpRequest.send()

Envía la solicitud. Si la solicitud es asíncrona (que es el comportamiento predeterminado), este método devuelve el control tan pronto como se envía la solicitud.

XMLHttpRequest.setAttributionReporting() Contexto seguro

Indica que quieres que la respuesta a la solicitud pueda registrar una fuente de atribución o un evento de activación.

XMLHttpRequest.setPrivateToken()

Añade información de token de estado privado a una llamada XMLHttpRequest para iniciar operaciones con tokens de estado privado.

XMLHttpRequest.setRequestHeader()

Establece el valor de una cabecera de solicitud HTTP. Debes llamar a setRequestHeader() después de open(), pero antes de send().

Eventos

Esta interfaz también hereda los eventos de XMLHttpRequestEventTarget.

readystatechange

Se dispara cada vez que cambia la propiedad readyState. También está disponible mediante la propiedad de manejador de eventos onreadystatechange.

Especificaciones

Specification
XMLHttpRequest
# interface-xmlhttprequest

Compatibilidad con navegadores

Véase también