前言

於 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 URL 的所有資訊
- LAE 戴均民 - LINE LIFF v2 的 replace 模式即將被移除及建議程式寫法
- LAE 卡米哥 - The Best Practice Of LIFF
改過去會遇到什麼問題?
可能會遇到的問題:
- 路徑問題
- 過往 LIFF 無法設定 sub path(子路徑),有些開發者會寫相關解決方案
- 出現同樣的路徑: https://example.com/
campaign/campaign
參考之前泰國同事的文章比較一下差異 - 您需要了解有關新 LIFF URL 的所有資訊
怎麼調整 Mode 的選項?
- 首先先進入 Developer Console 頁面中
- 選擇你 Chatbot Channel 的
Provider後,點選所使用的LINE LoginChannel

- 會看到服務中的 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,避免在日後遇到不可預期的錯誤,若還有相關問題無法解決,歡迎至討論區發問,會有許多高手在當中幫忙解答。
