Build with AI - 1 === ###### tags: `GDG on Campus FCU 2024/25` {%youtube Oi6qsr2dy8c%} ## Gemini Google 開發的生成式人工智慧聊天機器人 ### API 軟體組件之間一套明確定義的溝通方法 eg. 客人(使用者)需要透過服務生(API)點菜,服務生再依照訂單叫廚師(後台)做菜 1. 請求 Request 軟體應用向另一個軟體應用發送請求 內容: - 一個動作 eg. 獲取 GET, 更改 POST/PUT - 要取得/更改的數據的識別符號 eg. API端點URL - 可能的身份驗證信息 eg. API Token 2. 處理 伺服器接收 Request 後,根據 API 規範回應 3. 回應 Response 伺服器像用戶端發送回應 內容: - HTTP狀態碼 eg. 200 OK, 404 Not Found, ... etc. - 任何被請求/修改的數據 - 額外的元數據 eg. 分頁資訊, 錯誤訊息 4. 解析 用戶端接收回應後,解析內容進行相應操作 ### API 類型 #### 用途類 1. 公有 API 開法大眾,可能部分授權&費用 eg. Google Maps API 2. 私有 API 僅內部系統/特定使用者可存取 eg. 公司內部 API 3. 合作夥伴 API 僅可由特定合作對象存取 eg. 銀行 API 可能提供給合作的金融機構 4. 複合 API 兩個/以上的 API 組成,滿足複雜系統需求 #### 技術類 1. SOAP API (Simple Object Access Protocol) 簡單物件存取協定,用戶端和私服器使用 XML 交換訊息 較舊 多應用於企業及系統 2. RPC API (Remote Procedure Call) 遠端程序呼叫 用戶端在伺服器上完成功能/程序 私服器將輸出傳回用戶端 3. REST API 最常見 基於 HTTP 協定,使用 URL 來存取資源 回應格式多為 JSON/XML 伺服器依照用戶端要求啟動內部功能,並輸出資料回用戶端 通訊方式:單向 Request, Response 連線方式:每次 Request 都建立新連線 4. WebSocket API 用戶端和伺服器之間建立雙向連線 可保持久連線,即時傳輸數據 適合通訊應用 eg. 聊天室、股票市場資訊更新 基於 TCP 連線: 使用 ws:// 或 wss://(加密) 協議,建立在 TCP 上和 HTTP 協同運作 ### API 功用 1. 資料交換 2. 功能存取 3. 系統整合 ### ngrok 開發web後端的工具,可以快速讓外網連線到本機的伺服器 ### Flask 1. 微框架 2. 基於 Werkzeug (WSGI工具箱) **實作部分請參照影片所述 時間從47:12開始實作**
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up