這回來是API呼叫方式
常見的API在大型專案中都是會先封裝好,再透過API網址去呼叫。
主要使用axios,因為可以控制版本,相對於原生的fetch而言。
該份API呼叫範例程式碼優點:
1.集中管理 API 主機 URL
2.呼叫端程式碼更乾淨
3.易於維護和擴展
4.支援多環境
5.安全性
6.未來擴充方便
「配置集中化 + 呼叫簡潔化 + 易維護 + 安全 + 支援多環境」
1 | # API呼叫 |
首先環境檔案
.env
1 | API_BASE_URL=https://jsonplaceholder.typicode.com |
HttpClient.ts
把 GET 和 POST 都包成 HttpClient 的方法,並保留 TypeScript 泛型支援
1 | // HttpClient.ts |
型別定義
type.ts
1 | // types.ts |
呼叫範例:
main.ts
1 | // main.ts |
總結:
HttpClient 自動抓 .env 的 API_BASE_URL,呼叫時不用再傳。
.env 仍然可以管理不同環境的 URL 與 API 路徑。
main.ts 只要 import HttpClient + 用 .env 定義的路徑即可。