iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 23
0

第一:正確設定HTTPS
基於資料通訊安全的因素,在LINE平台上開發應用服務的所有資料傳送都必須透過加密通道。因此,當開發者架設LINE Messaging API的Webhook伺服器時,一定要使用HTTPS通訊協定。
如果HTTPS伺服器沒有正確設定成功,Webhook程式將無法收到LINE平台的任何事件訊息,並且管理者們會收到來自LINE平台的警示電子郵件,內容的錯誤原因會顯「UNCLASSIFIED」。

第二:驗證訊息來源
當開發者的Webhook伺服器收到以POST方式所傳送的LINE事件訊息時,必須要立即驗證該事件訊息是否真的來自LINE平台,以避免被偽造的訊息所欺騙造成資訊安全危機。
標準的驗證方式是檢查所收到HTTP請求標頭(HTTP request header)中的數位簽章。如果該HTTP POST訊息是來自LINE平台,在HTTP請求標頭中一定會包括X-Line-Signature項目,該項目的內容值是即為數位簽章。例如:
https://ithelp.ithome.com.tw/upload/images/20181025/20112075spWcaREu59.png

第三件事:LINE平台所傳送的事件是一個陣列
這是初學LINE聊天機器人的開發者易犯的一個錯誤。可能是因為全新的Messaging API帳號沒有大量的事件訊息傳入,每次所收到事件幾乎都只有一筆資料,所以開發者會誤以為每個事件訊息只需要處理一筆資料。事實上,LINE平台傳送給Webhook伺服器的HTTP請求本體是包括一個或多個Webhook事件物件的JSON格式物件,例如:

https://ithelp.ithome.com.tw/upload/images/20181025/20112075FwLPkHfZbs.png

http://evassmat.com/JMut
可以點擊網址觀看更多!


上一篇
LINE developer 介紹機器人表單
下一篇
LINE developer 不可不知的事--2
系列文
LINE 醫療機器人服務32

尚未有邦友留言

立即登入留言