轉移你的 LIFF: 從 Replace 到 Concatenate 模式

前言

於 1/18 釋出了一篇新聞 Reminder: On March 1, 2021, “Replace (Backward compatibility mode)” will be removed from the permanent link redirection settings for LIFF app and LINE MINI App,在這個新聞中提到將會在 3/1 移除 LIFF 的 Replace 模式:

移除後若尚未更新 LIFF SDK 的話可能會遇到以下問題:

  • LIFF 打不開
  • 空白頁面
  • 打開了但出現許多錯誤訊息

於 2020/11/20 有發過即將移除的新聞,隨後也有相關文章敘述這件事,許多更改內容可以參閱:

改過去會遇到什麼問題?

可能會遇到的問題:

  • 路徑問題
    • 過往 LIFF 無法設定 sub path(子路徑),有些開發者會寫相關解決方案
    • 出現同樣的路徑: https://example.com/campaign/campaign

參考之前泰國同事的文章比較一下差異 – 您需要了解有關新 LIFF URL 的所有資訊

怎麼調整 Mode 的選項?

  • 首先先進入 Developer Console 頁面中
  • 選擇你 Chatbot Channel 的 Provider 後,點選所使用的 LINE Login Channel
  • 會看到服務中的 LIFF page 目前是 Replace
  • 將之改成 Concatenate 模式
  • 升級你的 LIFF SDK 版本到 2.3 以上(目前最新為 2.7)避免版本不支援

結論

若因為時程問題造成無法再更新日期前完全改版,這邊提供一個新聞上的資訊,只要你的 LINE 版本在 v10.10.0(使用liff.getLineVersion()取版本) 以下 以及 LIFF SDK v2.2.1 以下即可繼續使用 Replace mode(不建議)。

您也可以參考近期更新的新聞,當中有提供範例的程式碼下載,他能夠將新的 LIFF(Concatenate 模式)轉換成當時 Replace 模式的程式碼,讓您的 LIFF 在轉換上能更加的順暢喔!

最後,筆者我還是建議大家趁早將程式碼 migration,避免在日後遇到不可預期的錯誤,若還有相關問題無法解決,歡迎至討論區發問,會有許多高手在當中幫忙解答。