xhr.js
1.0.0
xhr.js es una biblioteca (<2Kb) para realizar solicitudes de descanso AJAX/HTTP con XMLHttpRequest . Tiene una API similar con
Python-requests
.
1. Instale xhr.js
npm install xhr.js
2. importar xhr.js
Se admite la importación UMD, luego obtiene el objeto global: XHR
.
import XHR from 'xhr.js' ;
// or
var XHR = require ( "xhr.js" ) ;
o enlace con script
en archivos html:
< script src = "dist/xhr.min.js" > </ script >
Tercero, use la clase XHR
var xhr = XHR ( async ) ; // default is async. you can set sync use XHR(false)
xhr . on ( 'success' , function ( result ) {
console . log ( 'status:' , result . status ) ;
console . log ( 'statusText:' , result . statusText ) ;
console . log ( 'url:' , result . url ) ;
console . log ( 'responseType:' , result . responseType ) ;
console . log ( 'text:' , result . text ) ;
console . log ( 'headers:' , result . headers ) ;
console . log ( 'ok:' , result . ok ( ) ) ; // get the json result.
console . log ( 'json:' , result . json ( ) ) ; // get the json result.
console . log ( 'xml:' , result . xml ( ) ) ;
console . log ( 'blob:' , result . blob ( ) ) ;
} ) ;
xhr . get ( 'package.json' , { 'a' : 'b' } ) ;
Otra demostración post
:
var xhr = XHR ( ) ;
xhr . post ( '/post_url' , { 'a' : 'b' } , function ( r ) {
r = r . json ( ) ; // get the json result.
// write your code
} ) ;
Cargar archivo con objeto FormData
:
var fd = new FormData ( document . querySelector ( '#submit_form' ) ) ;
var xhr = new XHR ( ) ;
xhr . post ( '/submit/new' , fd , function ( r ) {
// request success
r = r . json ( ) ;
console . log ( r ) ;
} ) ;
La API de la instancia xhr.
xhr.request(method, url, body, onsuccess, onfail)
: solicita la url, con el método.xhr.on(event_key, event_func)
: vincula el resultado de la solicitud (listo, error, éxito, error), con la instancia del resultado como entrada.xhr.get(url, params, onsuccess, onfail)
: obtener solicitud.xhr.post(url, params, onsuccess, onfail)
: solicitud de publicación.xhr.setRequestHeader(header_name, header_value)
: agrega un encabezado.xhr.setAsync(aysnc)
: establece la solicitud asíncrona/sincronizada.xhr.url()
: obtiene la URL de solicitud.xhr.body()
: obtiene el cuerpo de la solicitud.xhr.abort()
: cancelar solicitud.xhr.reset()
: restablece la instancia de xhr, como URL, encabezados, cuerpo y eventos. Las claves evnet son para API on
.
ready
: cuando xhr
esté listo.success
: cuando status_code is 200
.fail
: cuando status_code is not 200
. La API es para solicitar result
del parámetro de la función de devolución de llamada.
result.text
: obtiene todo el texto de respuesta;result.status
: el código de respuesta del servidor;result.statusText
: el texto del código de respuesta del servidor, por ejemplo, ok
(el código de estado es 200
).result.responseType
: tipo de respuesta;result.headers
: obtiene todos los objetos de encabezados de respuesta;result.ok()
: la solicitud está bien;result.json()
: obtiene el objeto json del texto de respuesta;result.xml()
: obtiene el objeto xml del texto de respuesta;result.blob()
: obtiene el objeto blob del texto de respuesta;MIT