もともと Messaging API チャネルで作っていたウェブの LIFF アプリを LINE Login チャネルに作り変えようとしている中でエラーが発生して困っています。なお LIFF SDK のバージョンは 2.1 をどちらも使っています。
もともと Messaging API チャネルを使っていた際には、SDK で以下のような処理を行っていました:
(1) LINE トークルーム内で LIFF URL をタップし、LIFF アプリを起動
(2) ウェブアプリ内で SDK 2.1 の JavaScript をロード
(3) 画面ロード時に liffId を指定して liff.init( { liffId: 'liffId' } ) を実行して初期化
(4) liff.sendMessages() を実行して、元のトークルームにメッセージ送信
Messaging API チャネル利用時には (1) ~ (4) まですべて成功していました(&今も成功します)。
全く同じ処理を新たに LINE Login チャネルで定義した LIFF アプリで実行すると、(1) ~ (3) までは成功するのですが、(4) を実行するとエラーとなります。
ちなみに (4) 部分のコードは以下のような内容です:
liff.sendMessages([
data
]).then( () => {
alert( '送信されました' );
liff.closeWindow();
}).catch( ( err ) => {
alert( JSON.stringify( err, null, 2 ) );
});
そして Messaging API チャネル利用時には(成功するので) "送信されました" というメッセージが表示されて LIFF アプリがクローズするのですが、LINE Login チャネルを利用している場合だと(エラーとなって)以下のようなメッセージが表示されます:
{ line: 2, column: 5870, sourceURL: 'https://static.line-scdn.net/liff/edge/2.1/sdk.js' }
念の為 sourceURL の該当部分も見てみたのですが、さすがに理解が難しく、どのような原因でエラーが発生しているのかがわかりませんでした。
エラーの原因が分かる方はいらっしゃいますでしょうか? またはそもそもの話ですが、LINE Login チャネルの LIFF アプリ(SDK 2.1)で sendMessages に成功している方はいらっしゃるのでしょうか?