XMLHttpRequest
readyState 狀態說明
0 已經產生XMLHttpRequest,但還沒連結要撈的資料
1 用了open,但還沒把資料傳送過去
2 偵測到你有用send
3 loading
4 你撈到資料了,數據已經完全接收
open的格式
get 讀取資料
post 傳送資料到伺服器
true 同步
false 非同步
onload
確定有資料回傳了,可使用onload來取得回傳的值
get
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
   | let xhr = new XMLHttpRequest(); // readyState 狀態 // 0  已經產生XMLHttpRequest,但還沒連結要撈的資料 // 1  用了open,但還沒把資料傳送過去 // 2  偵測到你有用send // 3  loading // 4  你撈到資料了,數據已經完全接收
  // open('格式(get:讀取資料)','要讀取的網址',true(同步)false(非同步)) xhr.open('get','https://hexschool.github.io/ajaxHomework/data.json',true);
  // true 非同步, (多數使用true) // false 同步
  // 只要讀取資料的話,填null空值即可 xhr.send(null);
  console.log(xhr.responseText);
  // onload 當資料確定有回傳了,則開始執行以下function xhr.onload = function() {   console.log(xhr.responseText);   let data = JSON.parse(xhr.responseText);   console.log(data); }
   | 
 
post
1 2 3 4 5 6 7 8
   | let xhr=new XMLHttpRequest();    xhr.open('post','https://hexschool-tutorial.herokuapp.com/api/signup',true);
     //傳送的格式    xhr.setRequestHeader("Content-type","application/json")    //xhr.setRequestHeader("Content-type","application/www-form-urlencoded")        xhr.send('email=abcde@gmail.com&password=1234');
   | 
 
Post example