首頁 web前端 js教程 學習 JavaScript 中的 REST API

學習 JavaScript 中的 REST API

Jan 08, 2025 am 07:09 AM

學習 JavaScript 中的 REST API

REST API(表述性狀態傳輸應用程式介面)廣泛用於建立網路應用程式。本文將協助您了解如何在 JavaScript 中使用 REST API,涵蓋客戶端和伺服器端實作。


1.什麼是 REST API?

REST API 允許客戶端(例如瀏覽器或行動應用程式)與伺服器通訊以取得或操作資料。它遵循使用標準 HTTP 方法的無狀態架構。

核心概念

  1. 資源:由端點表示(例如,/users 表示使用者資料)。
  2. HTTP 方法
    • GET:檢索資料。
    • POST:建立一個新資源。
    • PUT:更新現有資源。
    • 刪除:刪除資源。
  3. 資料格式:JSON通常用於交換資料。
  4. HTTP 狀態碼
    • 200 OK:成功。
    • 201 已建立:資源已建立。
    • 400 Bad Request:客戶端錯誤。
    • 404 Not Found:找不到資源。
    • 500 內部伺服器錯誤:伺服器問題。

2.工具與設定

  • 對於客戶端

    • 瀏覽器(有 fetch 或 axios 函式庫的 JavaScript)。
    • 使用 https://jsonplaceholder.typicode.com 等 API 進行練習。
  • 對於伺服器端

    • 安裝 Node.js 並使用 Express 框架。

3.在客戶端使用 REST API

JavaScript 提供了 fetch() API 和 axios 等第三方函式庫來與 REST API 進行互動。


使用 fetch() 取得資料

以下是如何從 REST API 檢索資料。

// Fetch data from an API
const fetchUsers = async () => {
  try {
    const response = await fetch('https://jsonplaceholder.typicode.com/users');
    if (!response.ok) {
      throw new Error(`HTTP error! Status: ${response.status}`);
    }
    const users = await response.json(); // Parse JSON data
    console.log(users);
  } catch (error) {
    console.error('Error fetching users:', error);
  }
};

fetchUsers();
登入後複製
登入後複製
說明:
  1. fetch(url): 發出 HTTP 請求。
  2. response.json():將回應轉換為 JSON 格式。
  3. 錯誤的處理是使用 try...catch 來擷取網路錯誤或無效回應來實現。

使用 POST 傳送資料

要建立新資源,請使用 POST 方法和 fetch() API。

const createUser = async () => {
  try {
    const response = await fetch('https://jsonplaceholder.typicode.com/users', {
      method: 'POST', // HTTP method
      headers: {
        'Content-Type': 'application/json', // Specify JSON format
      },
      body: JSON.stringify({ // Convert JavaScript object to JSON
        name: 'Jane Doe',
        email: 'jane.doe@example.com',
      }),
    });

    const newUser = await response.json(); // Parse JSON response
    console.log(newUser);
  } catch (error) {
    console.error('Error creating user:', error);
  }
};

createUser();
登入後複製
登入後複製
重點:
  • method 選項指定 HTTP 方法。
  • 標題選項用於指示內容類型。
  • 內文包含 JSON 有效負荷。

4.在伺服器端建置 REST API

在後端,Node.js 和 Express 框架通常用於建立 REST API。

設定您的環境

  1. 安裝 Node.js:下載 Node.js。
  2. 初始化一個新項目:
// Fetch data from an API
const fetchUsers = async () => {
  try {
    const response = await fetch('https://jsonplaceholder.typicode.com/users');
    if (!response.ok) {
      throw new Error(`HTTP error! Status: ${response.status}`);
    }
    const users = await response.json(); // Parse JSON data
    console.log(users);
  } catch (error) {
    console.error('Error fetching users:', error);
  }
};

fetchUsers();
登入後複製
登入後複製

建立簡單的 REST API

這是基本 REST API 伺服器的範例。

const createUser = async () => {
  try {
    const response = await fetch('https://jsonplaceholder.typicode.com/users', {
      method: 'POST', // HTTP method
      headers: {
        'Content-Type': 'application/json', // Specify JSON format
      },
      body: JSON.stringify({ // Convert JavaScript object to JSON
        name: 'Jane Doe',
        email: 'jane.doe@example.com',
      }),
    });

    const newUser = await response.json(); // Parse JSON response
    console.log(newUser);
  } catch (error) {
    console.error('Error creating user:', error);
  }
};

createUser();
登入後複製
登入後複製
說明:
  • 中間件:app.use(express.json()) 解析傳入的JSON 請求。
  • 路線
    • GET /users:取得所有使用者。
    • GET /users/:id:取得特定使用者。
    • POST /users:新增使用者。
    • PUT /users/:id:更新使用者詳細資料。
    • DELETE /users/:id:刪除使用者。

5.測試您的 REST API

您可以使用Postman等工具或curl等命令列實用程式來測試您的API。

使用郵差

  1. 從這裡安裝 Postman。
  2. 建立一個新請求:
    • GET http://localhost:3000/users:取得所有使用者。
    • POST http://localhost:3000/users:使用 JSON 正文新增使用者。

使用捲曲

   mkdir rest-api-demo
   cd rest-api-demo
   npm init -y
   npm install express
登入後複製

6. REST API 開發最佳實務

  1. 使用有意義的端點名稱(例如,/users 而不是 /data)。
  2. 驗證使用者輸入以防止無效或有害資料。
  3. 遵循一致的 HTTP 狀態碼。
  4. 使用 Swagger 或 Postman 等工具記錄您的 API。

我的工作代碼倉庫
Learning REST APIs in JavaScript

結論

REST API 是現代 Web 開發的基石。透過學習在客戶端和伺服器端與 JavaScript 中的 REST API 進行交互,您將獲得建置和整合應用程式的強大技能。實踐是關鍵——從使用公共 API 開始,然後使用 Node.js 和 Express 建立自己的 API。


歡迎就本指南的任何部分提出問題或尋求澄清!

以上是學習 JavaScript 中的 REST API的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1669
14
CakePHP 教程
1428
52
Laravel 教程
1329
25
PHP教程
1273
29
C# 教程
1256
24
Python vs. JavaScript:學習曲線和易用性 Python vs. JavaScript:學習曲線和易用性 Apr 16, 2025 am 12:12 AM

Python更適合初學者,學習曲線平緩,語法簡潔;JavaScript適合前端開發,學習曲線較陡,語法靈活。 1.Python語法直觀,適用於數據科學和後端開發。 2.JavaScript靈活,廣泛用於前端和服務器端編程。

從C/C到JavaScript:所有工作方式 從C/C到JavaScript:所有工作方式 Apr 14, 2025 am 12:05 AM

從C/C 轉向JavaScript需要適應動態類型、垃圾回收和異步編程等特點。 1)C/C 是靜態類型語言,需手動管理內存,而JavaScript是動態類型,垃圾回收自動處理。 2)C/C 需編譯成機器碼,JavaScript則為解釋型語言。 3)JavaScript引入閉包、原型鍊和Promise等概念,增強了靈活性和異步編程能力。

JavaScript和Web:核心功能和用例 JavaScript和Web:核心功能和用例 Apr 18, 2025 am 12:19 AM

JavaScript在Web開發中的主要用途包括客戶端交互、表單驗證和異步通信。 1)通過DOM操作實現動態內容更新和用戶交互;2)在用戶提交數據前進行客戶端驗證,提高用戶體驗;3)通過AJAX技術實現與服務器的無刷新通信。

JavaScript在行動中:現實世界中的示例和項目 JavaScript在行動中:現實世界中的示例和項目 Apr 19, 2025 am 12:13 AM

JavaScript在現實世界中的應用包括前端和後端開發。 1)通過構建TODO列表應用展示前端應用,涉及DOM操作和事件處理。 2)通過Node.js和Express構建RESTfulAPI展示後端應用。

了解JavaScript引擎:實施詳細信息 了解JavaScript引擎:實施詳細信息 Apr 17, 2025 am 12:05 AM

理解JavaScript引擎內部工作原理對開發者重要,因為它能幫助編寫更高效的代碼並理解性能瓶頸和優化策略。 1)引擎的工作流程包括解析、編譯和執行三個階段;2)執行過程中,引擎會進行動態優化,如內聯緩存和隱藏類;3)最佳實踐包括避免全局變量、優化循環、使用const和let,以及避免過度使用閉包。

Python vs. JavaScript:社區,圖書館和資源 Python vs. JavaScript:社區,圖書館和資源 Apr 15, 2025 am 12:16 AM

Python和JavaScript在社區、庫和資源方面的對比各有優劣。 1)Python社區友好,適合初學者,但前端開發資源不如JavaScript豐富。 2)Python在數據科學和機器學習庫方面強大,JavaScript則在前端開發庫和框架上更勝一籌。 3)兩者的學習資源都豐富,但Python適合從官方文檔開始,JavaScript則以MDNWebDocs為佳。選擇應基於項目需求和個人興趣。

Python vs. JavaScript:開發環境和工具 Python vs. JavaScript:開發環境和工具 Apr 26, 2025 am 12:09 AM

Python和JavaScript在開發環境上的選擇都很重要。 1)Python的開發環境包括PyCharm、JupyterNotebook和Anaconda,適合數據科學和快速原型開發。 2)JavaScript的開發環境包括Node.js、VSCode和Webpack,適用於前端和後端開發。根據項目需求選擇合適的工具可以提高開發效率和項目成功率。

C/C在JavaScript口譯員和編譯器中的作用 C/C在JavaScript口譯員和編譯器中的作用 Apr 20, 2025 am 12:01 AM

C和C 在JavaScript引擎中扮演了至关重要的角色,主要用于实现解释器和JIT编译器。1)C 用于解析JavaScript源码并生成抽象语法树。2)C 负责生成和执行字节码。3)C 实现JIT编译器,在运行时优化和编译热点代码,显著提高JavaScript的执行效率。

See all articles