串接api是前端工程師常見的工作內容,好好認識與練習是熟悉他的關鍵。整理一些認識與練習的資源,並記錄學習的過程。
什麼是API
全稱Application Programming Interfaces
API是用來交換資訊的媒介/工具,在實體生活中,自助點餐機就是一個用來交換店家與客人之間資訊的API,店家透過自助點餐機把菜單資訊顯示給客人,客人透過自助點餐機點選需要的餐點回傳給店家。
在網路上使用的API就叫做WEB API,用來交換不同的資訊,例如要網站上使用google登入的API,去跟googl索取有google帳號使用者的個人資訊。
什麼是 API?有個很棒的比喻,把API想像成一個服務生,他會在應用程式、資料庫、裝置之間,傳送資料與創造連結。
在資料交換的過程,發展出一個機制,用來統一交換的做法,叫做REST,很類似網站向伺服器請求資料的規範。
網站向伺服器請求資料
Http method
GET/POST/PUT/PATCH/DELETE
CRUD
READ/CREATE/UPDATE/DELETE
REST
Representational State Transfer
guiding architectural constraints
- Client-Server Architecture
- Stateless
- Cacheability
- Layered System
- Code onDemand
- Uniform Interface
Restful
APIs that meet REST architectural style constraints
實作API
從Spotify API認識API文件實際使用方式,使用curl在終端機實作
從twilio API實際使用方式,使用curl在終端機實作
Restfox(本次教學使用的測試API工具)
Thunder Client(本次教學使用的測試API工具)
Postman(常見的測試API工具)
強大的功能可以自動寫好串接的code
helper libraries/SDKs(software developer kits)
they help make your code more concise and legible
打開vscode嘗試用https://www.twilio.com/docs/sms/api/message-resource
的node.js code
看如何使用環境變數
在vscode操作node.js