使用 WhatsApp Business 平台的授權令牌

WhatsApp Business Platform讓您可以輕鬆地向客戶發送 WhatsApp 訊息並自動回覆。在這裡,我們將探索使用Meta 託管的 Cloud API進行身份驗證。

我們將從產生和使用臨時存取令牌開始,然後將其替換為永久存取令牌。本教學假設您正在建立伺服器端應用程序,並且不需要額外的步驟來安全儲存您的 WhatsApp 應用程式機密。

管理存取和授權令牌
首先,我們回顧如何管理授權令牌並安全地存取 API。

首先確保您在Meta for Developers上擁

 

有一個開發者帳戶。您還需要在行動裝置上安裝 WhatsApp 來傳送測試訊息。

創建應用程式
在進行身份驗證之前,您需要一個應用程式來對您進行身份驗證。

登入後,您會看到 Meta for Developers 應用程式儀表板。點擊“創建應用程式”即可開始。

接下來,您需要選擇應用程式類型。選擇商業。

之後,輸入應用程式的顯示名稱。如果您有要連結到您的應用程式的企業帳戶,請選擇它。如果沒有,別擔心。 Meta for Developers 平台建立一個測試業務帳戶,您可以用它來試驗 API。完成後,按一下“建立應用程式”。

然後,您需要將產品新增至您的應用程式。向下捲動,直到看到 WhatsApp,然後點擊「設定」按鈕:

最後選​​擇現有的元商業帳戶

 

或要求平台建立新帳戶,然後按一下「繼續」這樣,您的應用程式就已建立並可供使用。您會自動定向到應用程式的儀表板。

請注意,您有一個臨時訪問令牌。出於安全原因,令牌將在 24 小時內過期。不過,您現在可以使用它來測試對 API 的存取。稍後,我們將介 卡塔爾 whatsapp 號碼數據 紹如何產生伺服器應用程式可以使用的永久存取權杖。另外,請記下您套用的電話號碼 ID,因為您很快就會需要它。

按一下「收件者」欄位下的下然後,進一步向下捲動儀表板頁面,您將看到一個拉列表,然後按一下「管理電話號碼列表」。

在出現的彈出視窗中,輸入要傳送測試訊息的 WhatsApp 帳號的電話號碼給其。

 

卡塔爾 whatsapp 號碼數據

類似於以下內容的範例curl呼叫

請注意,Meta for Developers 平台會插入應用程式的電話號碼 ID 和存取令牌,而不是上面顯示的 <YOUR PHONE NUMBER ID> 和 <YOUR ACCESS TOKEN> 佔位符。如果已curl安裝,請將命令貼上到終端並運行它。您應該 提高時事通訊開啟率的 10 種行之有效的方法 會在測試裝置上的 WhatsApp 中收到一則「hello world」訊息。

如果您願意,只需建立一個 POST 請求,設定如上所示的 Authorization 和 Content-Type 標頭(包括請求正文中的 JSON 負載),即可將curl 請求轉換為程式語言中的 HTTP 請求。

由於這篇文章是關於身份驗證的,所以讓我們專注於這一點。請注意,您已將應用程式的存取權杖包含在 Authorization 標頭中。對於對 API 的任何請求,您必須將 Authorization 標頭設定為Bearer <YOUR ACCESS TOKEN>。

 

請記住您必須使用令牌而

 

不是佔位符。如果您以前使用過 JWT 或 OAuth2 令牌,那麼使用不記名令牌將會很熟悉。如果您以前從未見過,持有者令牌本質上是一個隨機 印度數據 的秘密字串,您作為令牌的持有者可以將其呈現給 API 以證明您有權存取它。

未能包含此標頭會導致 API 傳回401 Unauthorized回應代碼。

建立永久存取令牌
知道需要在 HTTP 請求的授權標頭中使用不記名令牌很有幫助,但這還不夠。到目前為止,您看到的唯一訪問令牌是臨時的。您可能希望應用程式存取 API 的時間超過 24 小時,因此您需要產生更持久的存取權杖。

幸運的是Meta for Developers 平台

 

讓這一切變得簡單。您所需要做的就是將系統使用者新增至您的企業帳戶,以獲得可用於繼續存取 API 的存取權杖。若要建立系統用戶,請執行下列操作:

轉到業務設定。

選擇與您的應用程式關聯的企業帳戶。
在「使用者」下方,按一下「系統使用者」。
單擊新增。
命名系統用戶,選擇 Admin 為使用者角色,然後按一下建立系統使用者。
選擇whatsapp_business_messaging 權限。
點選產生新令牌。
複製並保存您的令牌。
您的存取令牌是由字母和數字組成的隨機字串。現在,嘗試使用剛剛建立的令牌而不是臨時令牌重新運行之前的請求:

您的測試設備應該會收到

 

管理存取權杖的最佳實踐
請務必記住,您永遠不應該將應用程式存取權杖嵌入到行動或桌面應用程式中。這些令牌僅用於與 API 通訊的伺服器端應用程式。像保護任何其他應用程式機密(例如資料庫憑證)一樣保護它們,因為擁有您的令牌的任何人都可以像您的企業一樣存取 API。

如果您的應用程式在 AWS、Azure、GCP 或其他雲端服務提供者上執行,則這些平台具有安全儲存應用程式機密的工具。或者,還有免費可用 使用 WhatsApp Business 的秘密存儲,例如Vault或Conjur。雖然這些選項中的任何一個都可能適合您,但評估您的選項並選擇最適合您的設定的選項非常重要。至少,考慮將存取權令牌儲存在環境變數中,而不是儲存在資料外洩期間很容易找到的資料庫或檔案中。

結論在這篇文章中您學習

如何建立利用 WhatsApp Business Platform 的 Meta for Developers 應用程式。您現在了解了 Cloud API 的承載存取令牌的工

如果您正在考慮為您的企業建立應用程式來管理 WhatsApp 訊息傳遞,為什麼不嘗試使用 Meta 託管的 Cloud API?現在您已經知道如何取得和使用存取令牌,您可以使用它們來存取API 中的任何端點。

返回頂端