99久久久精品免费观看国产,紧身短裙女教师波多野,正在播放暮町ゆう子在线观看,欧美激情综合色综合啪啪五月

千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > AJAX的第二春!fetch?。?!

AJAX的第二春!fetch?。。?/h1>
來源:千鋒教育
發布人:syq
時間: 2022-08-11 10:44:55 1660185895

  曾經的我們是那么的年少。然鵝,時光荏苒,歲月如梭,一代新人換舊人。我們已經三十出頭,成為了程序員中的大哥。

fetch

  現如今,互聯網界瞬息萬變,最新技術層出不窮。Vue、Axios、React、Redux、Angular、Node...等等等等。萬幸的是,底層的東西是不變的。所以,我們今天就來聊一聊,那些底層的東西。

  說起AJAX,相信大多數程序員都會本能的想起XMLHttpRequest。沒錯,XHR(小黃人)陪伴我們度過了許多歲月。但是,小黃人誕生的歲月,處于互聯網的原始階段。

  各大瀏覽器你方唱罷我登場,并沒有一個統一的Web標準。所以在今天看來,小黃人的設計顯得較為混亂。曾經一度被我們使用的jQuery(這也是一個大哥)幫助我們進行了合理的封裝。解決了我們的使用上的煩惱。但想要使用jQuery,我們就必須引入一個比較大的文件,這對于僅僅想要使用jQuery來進行發送ajax的我們來說并不十分友好。

  于是,在日新月日的今天,瀏覽器也順應潮流,增加了新的原生方式: fetch

  fetch是瀏覽器對AJAX的另一種原生支持方式(非XMLHttpRequest)。提供了一種更合理,更簡單的方式來異步獲取數據。

  它是基于Promise的,所以目前不了解Promise的同學,請先查閱相關文檔

  二、發送GET請求

  2.1 發送

  想要發送請求,非常簡單:一個最簡單的發送請求的方式

fetch('/api/getMessage')

  來看一下network面板:

AJAX的第二春!fetch?。?!656

  請求成功!

  查看詳情

AJAX的第二春!fetch?。?!669

  發送請求,完成!

  一切就是這么的簡單......

  2.2 接收數據

  接收數據:

fetch('/api/getMessage')

    .then(res => res.json())

    .then(data => console.log(data))

  調用fetch之后得到的結果是一個Promise實例。所以可以調用then方法進行狀態監聽。

  就像平時我們說人很厲害,會說:

  這里的處理也分為兩次:

  第一次決定返回的格式 (第一把刷子...)

  第二次才是真正的接收數據 (第二把...)

  在第一個then函數中,我們通過return返回了一個 res.json()

  這個代碼的意思是將返回回來的數據處理成JSON格式

  之所以要return是因為res.json()的結果依舊是一個Promise實例。

  在第二個then函數中,我們可以得到上一個then函數處理之后的結果。

AJAX的第二春!fetch?。。?066

  注意第一個then中其實可以調用的方法有很多,比如res.text()、res.blob()等,這里不再贅述,請看下文

  三、發送POST請求

  3.1 發送請求

  發送POST請求的方式與發送GET請求的方式類似,不過要多一個配置參數

fetch('/api/postMessage', {

  method: 'post'

})

  第一個參數依然表示URL

  第二個參數是一個對象

  配置它的method屬性,可以發送POST請求。

  network面板:

AJAX的第二春!fetch?。。?292

  請求首行信息:

AJAX的第二春!fetch?。。?302

  3.2 接收數據

  同樣的,我們依然要通過兩次then方法來處理并接收數據

fetch('/api/postMessage', {

  method: 'post'

})

  .then(function (res) {

    return res.json()

  })

  .then(function (data) {

    console.log(data)

  })

  返回內容:

AJAX的第二春!fetch!?。?500

  至此我們已經學會了如何通過fetch發送基本的get與post請求。接下來我們要更加深入的去掌握更多的fetch使用方法

  四、攜帶數據

  發送請求時,有時我們需要攜帶一些數據

  這些數據可以根據請求類型的不同而放在不同的位置。

  · GET請求的數據放在URL的QueryString部分

  · POST請求的數據攜帶在請求正文中

  4.1 GET請求攜帶數據

  最簡單的方式就是在拼接字符串的時候把查詢串放在URL上。

  fetch('/api/getMessage?a=1&b=2&c=3')

  那么請求時,就會攜帶在上面了。

AJAX的第二春!fetch?。?!1758

  但是這種方式會使我們在發送請求時不得不拼接字符串。如果字段比較多,會是一件很麻煩的事情。

  此時我們可以通過 URLSearchParams 來實現

  4.2 URLSearchParams

  這是一個URL的Search部分參數的構造函數。簡單來說就是生成查詢字符串的。

  語法:

  var query = new URLSearchParams([init]);

  參數init(可選):

  1. 字符串

  2. 二維數組

  3. 對象(推薦)

  字符串:

var search = '?a=1&b=2&c=3';

var querystring = new URLSearchParams(search);

var str = querystring.toString();

console.log(str)

  輸出:

AJAX的第二春!fetch?。?!2105

  二維數組:

var arr = [

  ['a', 1],

  ['b', 2],

  ['c', 3],

  ['d', 4],

  ['e', 5]

]

var querystring = new URLSearchParams(arr);

var str = querystring.toString();

console.log(str)

  輸出:

AJAX的第二春!fetch?。。?288

  現在,我們可以通過URLSearchParams這種方式來獲取對應的參數,這樣就可以快速生成查詢串

  4.3 POST請求攜帶數據

  POST請求的數據攜帶在請求正文中。我們需要設置fetch的第二個參數的body屬性。

  body的屬性值可以是以下任意類型之一: 我們這里只演示字符串的情況

  1. ArrayBuffer

  2. ArrayBufferView (Uint8Array等)

  3. Blob/File

  4. string

  5. URLSearchParams

  6. FormData

  body的值是字符串

fetch("/api/postMessage", {

  method: 'post',

  body: JSON.stringify({

    a: 1,

    b: 2,

    c: 3

  }),

  headers: {

    "content-type": 'application/json'

  }

})

  請求正文內容:

AJAX的第二春!fetch?。?!2702

  至此,我們已經討論了通過fetch函數進行GET請求與POST請求的發送與攜帶數據。fetch是原生瀏覽器自帶的方法。不需要再編寫XHR請求或依賴jQuery 。

  如有疏漏,敬請指正。更多關于“前端培訓”的問題,歡迎咨詢千鋒教育在線名師。千鋒教育多年辦學,課程大綱緊跟企業需求,更科學更嚴謹,每年培養泛IT人才近2萬人。不論你是零基礎還是想提升,都可以找到適合的班型,千鋒教育隨時歡迎你來試聽。

tags:
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT
我想直播帶貨去哪里找貨源一件代發

現在直播帶貨是一個非?;鸬男袠I,越來越多的人進入到這個圈子,但是,認真地說,直播帶貨能不能賺到錢還是要看自己。雖然這一行業火,收入高,...詳情>>

2023-09-19 08:41:02
入駐短視頻mcn需要多少錢?有哪些費用?

眾所周知,現在短視頻成了很多人的自媒體創業道路之一,越來越多人喜歡在網上消遣時間,購物等。也有很多優秀的博主去做出很多新的內容,那么入...詳情>>

2023-09-19 08:12:47
短視頻帶貨應該注冊什么公司?需要什么資料?

短視頻大家應該都非常熟悉,現在很多人都喜歡在閑暇的時候刷短視頻,短視頻平臺也開始了直播帶貨,商家也都開始創業了,那么短視頻帶貨需要營業...詳情>>

2023-09-19 08:09:31
怎樣投抖加不花錢?別人能看出來嗎?

抖音一些視頻為了獲取更多點擊,一些博主機會投抖加。其實抖加的投放沒有絕對正確的方法,而不同賬號和視頻投放的策略都是不一樣的,不過一般情...詳情>>

2023-09-19 08:00:10
抖店入駐收費多少?開抖店費用是多少?

如果要開通抖音小店,需要先把抖音賬號開通商品櫥窗功能。入駐之后,可以選擇頭條賬號、抖音賬號、火山賬號任一類型注冊或登錄。那開個抖店要多...詳情>>

2023-09-19 07:50:26
開班信息
北京校區
  • 北京校區
  • 大連校區
  • 廣州校區
  • 成都校區
  • 杭州校區
  • 長沙校區
  • 合肥校區
  • 南京校區
  • 上海校區
  • 深圳校區
  • 武漢校區
  • 鄭州校區
  • 西安校區
  • 青島校區
  • 重慶校區
  • 太原校區
  • 沈陽校區
  • 南昌校區
  • 哈爾濱校區
主站蜘蛛池模板: 日韩福利在线| 中文精品久久久久国产网址| 免费网站看v片在线香蕉| 奶大灬舒服灬太大了一进一出| 小受被强攻按做到哭男男| 国产欧美精品区一区二区三区| 男男高h粗暴黄车文| 妞干网视频| 成人毛片手机版免费看| 免费国产成人午夜私人影视| 一区在线免费| 五十路六十路绝顶交尾| 污污视频网站免费在线观看 | 91老湿机福利免费体验| 国内精品久久久久影院蜜芽| 波多野结衣三人蕾丝边| 国产三级在线观看专区| 收集最新中文国产中文字幕| 樱桃视频影院在线播放| 美女扒开粉嫩尿口的漫画| 人人爽人人爽人人片av| 国产视频精品久久| 第一毛片| 妇色妇荡| 日本在线免费看片| 亚洲国产日韩欧美一区二区三区| 成人永久福利免费观看| 国产日产久久高清欧美一区 | 你懂的在线免费观看| 久久大香伊人中文字幕| 日韩在线视频线视频免费网站| 欧美日韩在线一区二区三区| 国产欧美精品一区二区色综合| 久久97久久97精品免视看秋霞| 亚洲国产美女精品久久久久| 正在播放宾馆露脸对白视频| 久久免费观看国产精品88av| 2021日本三级理论影院| 亚洲免费观看视频| 中国一级片在线观看| 亚洲综合三区|