xhr.js
1.0.0
xhr.js عبارة عن مكتبة (<2 كيلو بايت) لتقديم طلبات AJAX/HTTP المريحة باستخدام XMLHttpRequest . لديها واجهة برمجة تطبيقات مماثلة
Python-requests
.
1. قم بتثبيت xhr.js
npm install xhr.js
2. استيراد xhr.js
يتم دعم استيراد UMD، ثم احصل على الكائن العام: XHR
.
import XHR from 'xhr.js' ;
// or
var XHR = require ( "xhr.js" ) ;
أو الارتباط script
في ملفات html:
< script src = "dist/xhr.min.js" > </ script >
3. استخدم فئة 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' } ) ;
عرض post
آخر:
var xhr = XHR ( ) ;
xhr . post ( '/post_url' , { 'a' : 'b' } , function ( r ) {
r = r . json ( ) ; // get the json result.
// write your code
} ) ;
تحميل الملف باستخدام كائن 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 ) ;
} ) ;
واجهة برمجة التطبيقات لمثيل xhr.
xhr.request(method, url, body, onsuccess, onfail)
: اطلب عنوان url مع الطريقة.xhr.on(event_key, event_func)
: ربط نتيجة الطلب (جاهز، خطأ، نجاح، فشل)، مع مثيل النتيجة عند إدخالها.xhr.get(url, params, onsuccess, onfail)
: الحصول على الطلب.xhr.post(url, params, onsuccess, onfail)
: طلب النشر.xhr.setRequestHeader(header_name, header_value)
: إلحاق رأس.xhr.setAsync(aysnc)
: تعيين الطلب غير المتزامن/المزامنة.xhr.url()
: الحصول على عنوان URL للطلب.xhr.body()
: الحصول على نص الطلب.xhr.abort()
: إحباط الطلب.xhr.reset()
: إعادة تعيين مثيل xhr، مثل عنوان url، والرؤوس، والنص، والأحداث. مفاتيح evnet مخصصة لواجهة برمجة التطبيقات (API) on
.
ready
: عندما يكون xhr
جاهزًا.success
: عندما status_code is 200
.fail
: عندما status_code is not 200
. واجهة برمجة التطبيقات مخصصة result
معلمة وظيفة رد الاتصال.
result.text
: الحصول على نص الاستجابة بالكامل؛result.status
: رمز استجابة الخادم؛result.statusText
: نص رمز استجابة الخادم، على سبيل المثال ok
(رمز الحالة هو 200
).result.responseType
: نوع الاستجابة؛result.headers
: الحصول على كافة كائنات رؤوس الاستجابة؛result.ok()
: الطلب مقبول؛result.json()
: الحصول على كائن json في نص الاستجابة؛result.xml()
: الحصول على كائن xml لنص الاستجابة؛result.blob()
: الحصول على كائن blob في نص الاستجابة؛معهد ماساتشوستس للتكنولوجيا