AJAX - XMLHttpRequest
- အရေးပါ စာရင်း AJAX XMLHttp
- နောက်ပိုင်း စာရင်း AJAX တုန့်ပြန်
XMLHttpRequest အချက်အလက် အက်ဥပဒေ အချက်အလက် အက်ဥပဒေ
အက်ဥပဒေ အချက်အလက် ပေးပို့ရန်
အက်ဥပဒေ အချက်အလက် ပေးပို့ရန် အခြား open()
နှင့် send()
အမှု
xhttp.open("GET", "ajax_info.txt", true); xhttp.send();
方法 | ဖော်ပြ |
---|---|
open(method, url, async) |
အချက်အလက် အမှုကို အချက်အလက်
|
send() | GET အမှု အခြား |
send(string) | အချက်အလက်များ ပေးပို့ရန် အခြား |
GET သို့မဟုတ် POST?
GET အမှု အခြား
သို့သော် အော်
- အချက်အလက်များ အသုံးပြုသည့် အချက်အလက်များ အသုံးပြုရန် အခြား
- အသုံးပြုသူက ပေးပို့ရသော အချက်အလက်များ အများဆုံး
- အသုံးပြုသူ၏ အချက်အလက်များကို ပေးပို့ရန် အသုံးပြုသည့် အချက်အလက်များ ကို ပေးပို့ရန် အခြား
GET အချက်အလက်များ
အကယ်၍ GET အချက်အလက်များကို ပေးပို့ရန် အခြား
实例
xhttp.open("GET", "demo_get.asp", true); xhttp.send();
အထူးသဖြင့် အပြင်းအထန်သော အချက်အလက်များကို ပေးပို့ရန် အခြား
实例
xhttp.open("GET", "demo_get.asp?t=" + Math.random(), true); xhttp.send();
GET အမှုကို သုံးပြီး အချက်အလက်များကို ပေးပို့ရန် အဲ့
实例
xhttp.open("GET", "demo_get2.asp?fname=Bill&lname=Gates", true); xhttp.send();
POST အချက်အလက်များ
အကယ်၍ POST အချက်အလက်များကို ပေးပို့ရန် အခြား
实例
xhttp.open("POST", "demo_post.asp", true); xhttp.send();
HTML ပုံစံအသုံးပြု၍ POST အချက်အလက်များကို ပေးပို့ရန် အော် setRequestHeader()
HTTP အ�处头အရာတစ်ခု ထပ်ပေးပါ၊ အရာမှာ send()
လုပ်သုံးခြင်းတွင် သင်သူက ပေးပို့ရသော အချက်အလက်များကို ရည်ညွှန်းထားသည့်အပြင်
实例
xhttp.open("POST", "ajax_test.asp", true); xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); xhttp.send("fname=Bill&lname=Gates");
方法 | ဖော်ပြ |
---|---|
setRequestHeader(header, value) |
HTTP အချိန် အချိန် ဖိုင် ဖြင့် အစီအစဉ် ပြုလုပ်
|
url အခြေခံ အုပ်ချုပ် အချိန် တွင် လုပ်ဆောင် ရန် ဖိုင်
open() အမှု url အခြေခံ အုပ်ချုပ် အချိန် တွင် လုပ်ဆောင် ရန် ဖိုင် အချိန် ဖြစ်သည်
xhttp.open("GET", "ajax_test.asp", true);
သို့သော် အဆိုပါ ဖိုင် အမျိုးအစား မည်သည် ဖြစ်ကြောင်း မရှိ။ အဆိုပါ ဖိုင် အမျိုးအစား အချက်အလက် အချက်အလက် ဖြစ် သည် ဖြစ် သည် သို့မဟုတ် .txt နှင့် .xml ကဲ့သို့ အခြား ဖိုင် အမျိုးအစား ဖြစ် သည် သို့မဟုတ် .asp နှင့် .php ကဲ့သို့ အခြား ဖိုင် အမျိုးအစား ဖြစ် သည် ဖြစ် သည် သို့မဟုတ် ဖြိုးဖြူး အခြေခံ အုပ်ချုပ် အချိန် တွင် လုပ်ဆောင် ရန် အခြေခံ အုပ်ချုပ် ဖြစ် သည်
true သို့မဟုတ် false ဖြစ်သည်
အခြား ပေါင်းစပ် တင်ချက် လုပ်ရန်open()
နှင့် async အခြေခံ အုပ်ချုပ် အချိန် တွင် ပြင်ဆင် ရန် true
:
xhttp.open("GET", "ajax_test.asp", true);
ပေါင်းစပ် တင်ချက် လုပ်ရန် လူမှု အသုံးပြုထားသည် သည် ဝီကီ ပေါ် လူမှု အသုံးပြုထားသည် အထက် အကျွံ ကြီး ဖြစ်သည်။ ဝီကီ အတိုင်း အခြေခံ အုပ်ချုပ် အသုံးပြုခဲ့ သော အခါ အကျွံ ကြီး အချိန် အတွင်း လုပ်ဆောင် ရန် အခြေခံ အုပ်ချုပ် ဖြစ်နိုင် ပါသည်။
အခြား ပေါင်းစပ် တင်ချက် လုပ်ရန် အခြေခံ အုပ်ချုပ် အသုံးပြု၍ လက်ခံ လိမ့်မယ်
- တင်ချက် ပြည့်ပြီး အခြေခံ အုပ်ချုပ် မရှိ သော အခါ အခြား အယူအယွန် တင်ချက် လုပ်ဆောင်
- တင်ချက် ဖြစ်ပေါ်လာသော အခါ ပြုလုပ်
onreadystatechange အကို
XMLHttpRequest အား အစီအစဉ် တစ်ခု အသုံးပြု၍ တင်ချက် ခံစာ ချိန် တွင် လုပ်ဆောင် ရန် အခြေခံ အုပ်ချုပ် ပြုနိုင်ပါသည်
XMLHttpRequest အား ပြည့်ပြီး အောင်မြင် ဖြစ်သော အခါ ဖြစ်သည် onreadystatechange
ပုံစံ တွင် အသုံးပြုထားသော
实例
xhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementById("demo").innerHTML = this.responseText; } }; xhttp.open("GET", "ajax_info.txt", true); xhttp.send();
နောက်ဆုံးအချိန် အခန်း များ တွင် onreadystatechange နှင့် ပတ်သက်၍ ပိုမိုကောင်းပြီး သုံပြီး သိရှိပါလိမ့်မယ်
ပေါင်းစပ် တင်ချက်
အပြည့်အထား ပေါင်းစပ် တင်ချက် လုပ်ရန် ကျွန်ုပ်ကို ကိုယ်စားပြုသည် open()
方法中的第三个参数设置为 false
:
xhttp.open("GET", "ajax_info.txt", false);
有时 async = false 用于快速测试。你也会在更老的 JavaScript 代码中看到同步请求。
由于代码将等待服务器完成,所以不需要 onreadystatechange 函数:
实例
xhttp.open("GET", "ajax_info.txt", false); xhttp.send(); document.getElementById("demo").innerHTML = xhttp.responseText;
我们不推荐同步的 XMLHttpRequest (async = false),因为 JavaScript 将停止执行直到服务器响应就绪。如果服务器繁忙或缓慢,应用程序将挂起或停止。
အဆိုပါ အဆိုပါ အကူအညီ အရာဝတ္တု ကို ဝတ္တု အခြေခံအချက်အလက် မှ ဖယ်ရှားခြင်း ကို ဖြိုဖျက်ခြင်း ဖြစ်ပါသည်။ သို့သော် ထိုအခြေခံအချက်အလက် ဖယ်ရှားခြင်း အတွက် အချိန် အများကို လိုသည်။
သန်းကြွင်း အကူအညီ အရာဝတ္တု အသုံးပြုခြင်း ကို ခြေရာခံခြင်း ကို ကျွန်ုပ် ကျပ်ထုတ်ချက်ပေးသည်။ ထို့ပြင် ထိုအခြေခံအချက်အလက် ဖြစ်ပါက InvalidAccessError အကျိုးသက် ဖြစ်ပေါ်နိုင်ပါသည်။
- အရေးပါ စာရင်း AJAX XMLHttp
- နောက်ပိုင်း စာရင်း AJAX တုန့်ပြန်