異步的JavaScript和XML
- 使用XMLHttpRequest 發請求
- 服務器返回XML格式的字符串
- JS解析XML, 並更新局部頁面
只需要記住readyState === 4 的情況
只有 協議+端口+域名 一模一樣才允許發AJAX請求(同源策略)
如果不同源, 可以用CORS解決
response.setHeader('Access-Control-Allow-Origin', 'url')
請使用原生JS發送AJAX請求
myButton.addEventListener('click', (e) => {
let request = new XMLHttpRequest()
request.open('GET', 'http://jack.com:8002/xxx') // 配置request
request.send()
request.onreadystatechange = () => { // 監聽狀態
if (request.readyState === 4) { // 判斷狀態是否完成
if (request.status === 200) {
let string = request.responseText
let object = window.JSON.parse(string) // 把符合JSON語法的字符串轉換成JS對象
console.log(object)
} else if (request.status >= 400) {
console.log('fail')
}
}
}
})