Javascript 獲取 API

| | | | | |

開發人員通常需要從他們自己的 API 或第三方 API 檢索數據。本文討論使用瀏覽器 Fetch API 從端點獲取數據。

Fetch API 是一個接口,允許我們從 Chrome 或 Firefox 等 Web 瀏覽器向服務器發送 HTTP 請求。 GET 請求到達服務器上的端點,然後返回帶有來自該端點的數據的響應,以便您可以讀取它。

請求類型

HTTP GET 請求只是一個您可以向服務器發出的請求類型。其他類型的請求是 POST、PUT 和 DELETE。這些請求發出 CRUD 請求。我們可以在這裡創建 (POST)、讀取 (GET)、更新 (PUT) 和銷毀 (DELETE) 數據庫中的數據。

此外,我們還可以訪問第三方 API 端.根據 API,您將只被允許運行某些查詢,主要是為了保持它們的數據不可變,因此您將無法運行那些操縱數據的查詢,您將只能讀取它們。

Fetch API 是如何工作的?

Fetch API 使用基於 Promise 的通信系統。提醒一下,promise 是異步函數,它們將邏輯包裝在自己的代碼塊中,並返回一個響應來確定 promise 是已解決還是被拒絕。

作為 Fetch API 的用戶,你不暴露我們沒有必要實際編寫promise的邏輯。只需使用它發送請求,Fetch API 就會返回一個隱藏的承諾。以下是您獲得答案的基本語法:

promise.then (response) .then (json) .catch (error) ;

promise 是異步請求 fetch() 方法在全局範圍內可用,並傳遞給我們要執行 HTTP 請求的端點。

請求之後,我們可以使用then和catch或者使用async/wait函數來獲取服務端的響應。

Promise語法

在這裡我們接受承諾並等待響應。當我們收到響應時,如果狀態碼不是 200,我們會在控制台上記錄錯誤代碼並終止函數。

否則,使響應可讀,以便我們的前端網站可以使用它,我們用 json() 將其更改為 JavaScript Object Notation (JSON) 對象。我們希望在繼續之前對其進行評估,因此讓我們將一個 Promise 鏈接到前一個 Promise。

評估後,我們可以記錄花費的費用以在我們的控制台上查看它。如果你關注你應該得到這樣的東西:

如果我們在前端獲得這些信息,我們可以用它來填寫卡片或表格,或者我們想顯示它。

Async/Await

你也可以使用async/wait函數來保存同樣的結果。

關鍵字async告訴我們`這個函數的一部分將是異步的。當我們到達wait關鍵字時,腳本執行在這行代碼被求值之前停止。

我們在這個函數中有兩個 wait 語句,相當於兩個 then () 語句我們在 Promise 邏輯中有一個我們瀏覽的 url 和 th直到獲取的信息被解析為 JSON。我們使用 try / catch 來捕獲響應中返回異常情況時可能發生的錯誤。

尾註

為了讓 Fetch API 正常工作在節點環境中(即,如果您使用像 Visual Studio Code 這樣的 IDE),您將需要 wire addnpm install node-fetch,因為 fetch 僅適用於瀏覽器環境.

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method