對於非 Gmail 用戶端,Gmail 支援標準 IMAP、POP 和 SMTP 通訊協定。Gmail IMAP、POP 和 SMTP 伺服器已擴充功能,可透過業界標準 OAuth 2.0 通訊協定支援授權。
通訊協定
IMAP、POP 和 SMTP 會使用標準的簡易驗證和安全性層 (SASL),並使用內建的原生 IMAP AUTHENTICATE
、POP AUTH
和 SMTP AUTH
指令驗證使用者。SASL XOAUTH2 機制可讓用戶端提供 OAuth 2.0 憑證進行驗證。SASL XOAUTH2 通訊協定說明文件詳細說明 SASL XOAUTH2 機制,並提供已實作通訊協定的程式庫和範例。
連線至 imap.gmail.com:993
的 IMAP 伺服器和 pop.gmail.com:995
的 POP 伺服器的內送連線需要使用 SSL。外寄 SMTP 伺服器 smtp.gmail.com
支援 TLS。如果用戶端一開始使用的是純文字,請在發出 STARTTLS 指令前,使用 465
(SSL) 或 587
(TLS) 通訊埠。
工作階段長度限制
Gmail POP 工作階段的時間長度約為 7 天。Gmail IMAP 工作階段的時間上限為約 24 小時。如果使用 OAuth 憑證驗證工作階段,則工作階段的有效時間會受到使用存取權杖的有效期間限制 (通常為 1 小時)。在這個情況下,工作階段是指一個連續的 TCP 連線。
時間到期且工作階段結束後,Gmail 會關閉連線,並顯示工作階段已到期的訊息。之後,用戶端可以重新連線、再次驗證,然後繼續操作。如果使用 OAuth,請確認使用的存取權杖有效 (如果您嘗試使用超過 1 小時的存取權杖,可能會失效)。
程式庫與範例
使用 IMAP 或 POP 存取郵件,以及使用 SMTP 傳送郵件時,通常會使用現有的 IMAP 和 SMTP 程式庫,以便於操作。只要這些程式庫支援簡易驗證和安全性層 (SASL),就應該與 Gmail 支援的 SASL XOAUTH2 機制相容。
除了 SASL XOAUTH2 通訊協定說明文件,您也許還想參閱「使用 OAuth 2.0 存取 Google API」一文,進一步瞭解如何實作 OAuth 2.0 用戶端。
「程式庫和範例」頁面提供使用 SASL XOAUTH2 機制搭配 IMAP 或 SMTP 的各種常見語言程式碼範例。