之前在 AJAX 時提到了不少用法,其實請求的方法有不少,傳遞的資料也有不同,如果前後端分離,兩者其實就是用 API 溝通,因此做個紀錄
XMLHttpRequest
:JavaScript Day19 - AJAX(1)
fetch
:JavaScript Day20 - AJAX(2)
axios
:JavaScript Day21 - AJAX(3)
fetch
// post
const url = ''; // API url
const data = {
"name": name.value,
"password": password.value
}; // JSON data
fetch(url,{
method:'POST', // 依需求更換 method
body:JSON.stringify(data), // 依需求調整格式
headers: {'Content-Type': 'application/json'} // 依需求調整格式
}).then() // function
// 假設有一個 form 的上傳表單
let formData = new FormData();
let fileField = document.querySelector("input[type='file']");
formData.append('username', 'abc123');
formData.append('avatar', fileField.files[0]);
// fetch post
fetch('https://example.com/profile/avatar', {
method: 'POST',
body: formData
})
.then(response => response.json())
.catch(error => console.error('Error:', error))
.then(response => console.log('Success:', response));
axios
let url = 'https://apiurl';
let data = {
// JSON data
};
//請求表頭
let headers = {
"Content-Type": "application/json"
};
// post
axios({
method: 'post',
url: url,
data: data,
headers: headers
})
MDN HTTP 請求方法
MDN Content-Type
MDN Using Fetch
[第四週] 網路基礎 - HTTP、Request、Response
AJAX 完整解說系列:新增、更新、刪除(POST/PATCH/DELETE)
JavaScript基本功修練:Day29 - axios基本語法與練習(GET、POST請求)
axios 基本使用 & Config
Fetch & Promise 筆記五(Fetch 的使用注意事項)
RESTful API 練習 (XHR, Fetch詳解)
API 是什麼? RESTful API 又是什麼?
做個此次系列的相關資料補充