JavaScript Day19 - AJAX(1)

AJAX

  • AJAX(Asynchronous JavaScript And XML):使用非同步资料请求的缩写,代表非同步 JS 和 XML
  • 参考第一版的 Day27 - AJAX(01)
  • 同步、非同步:一开始跟我原本的想法有落差,会觉得同步就是多项同时,但其实不是如此
    • 同步:同一时间只做一件事情,同一条步道(线)上,一个接一个,要等上一个完成
    • 非同步:同一时间不只做一件事情,不同条步道(线)上,各自处理,不等待

XMLHttpRequest

  • XMLHttpRequest:基本流程参考范例与之前的笔记,基本上现在比较少用 XMLHttpRequest
  • 送出一个 HTTP 请求 (request) 如下 (from MDN)
    • 建立一个 XMLHttpRequest 物件
    • 开启一个 URL,并发起一个请求
    • 在交易(transaction)完成後,XMLHttpRequest 物件将会包含如回应内容(response body)及 HTTP 状态等等请求结果中的有用资讯
const xhr = new XMLHttpRequest();
// xhr.readyState; // 显示 0

xhr.open('get','https://hexschool.github.io/ajaxHomework/data.json',true);
// xhr.readyState; // 显示 1

xhr.send(null);
// xhr.readyState; // 显示 4

xhr.response; // 显示 "[{"name":"王小名"}]"

参考资料

使用 XMLHttpRequest
JavaScript AJAX (Asynchronous JavaScript and XML)

HTTP 状态码

  • HTTP 状态码 (HTTP response status codes):表示一个 HTTP 的要求是否已经被完成
  • 资讯回应 (Informational responses):100–199
  • 成功回应 (Successful responses):200–299
    • 200:OK,请求成功
  • 重定向 (Redirects):300–399
    • 304:Not Modified,未修改,使用原本的档案,用在快取(缓存)
  • 用户端错误 (Client errors):400–499
    • 404:Not Found,服务器找不到请求的资源
  • 服务器端错误 (Server errors):500–599
    • 500:Internal Server Error,服务器端发生未知或无法处理的错误

参考资料

HTTP 状态码
网页开发人员应了解的 HTTP 状态码

次回

继续 AJAX 吧


<<:  【在厨房想30天的演算法】Day 19 演算法 : 图形搜寻 graph search 广度搜寻、深度搜寻

>>:  [Day 19] SQL select & where

Day6-Java反编译工具:javap

javap介绍 javap是jdk工具中自带的反编译工具,它是根据class位元组码档案,反解析出当...

心得

今天是铁人赛的最後一天啦!回想起刚开赛时,抱持着怎麽样都不要去碰到vue-cli的心态,但是到了铁人...

Day 11 - 用 canvas 复刻 小画家 多边形

方法一 此多边形方法虽然不是小画家的画法,但一样可以达成多边形的做法,如下: /** * 滑鼠点下画...

Batch Processing (3-2) - MapReduce Map-Side Joins

[Day 26] Batch Processing (3-2) - MapReduce Map-Si...

Swift 新手-ios 应用软件开发资料与云端储存篇(ㄧ)

将 Swift 连上 Firebase 资料库,从 cocoapods 安装 Firebas、App...