LINEのMessage APIでFlex Messageを返却したときにiOSでエラーとなる時の対処

システム開発Tips

端末間誤差めんどい。

LINE Bot Designerを使ってFlex MessageのJsonサンプルを作成してクライアントに送信したのですが、

Androidでは表示されるのに、iOS(iPhone)では表示出来なかった時の覚書。


エラーの内容としては

file

エラー
正常に処理できませんでした。

が表示されるので明らかに処理に失敗します。

疑わしいJson(bodyとかhederとか…)を色々削ってみたのですが、解決せず。

あ!・・・画像・・・かな・・・?

と思ってheroに指定していた画像のURLを変えると表示された!!

どうもPHPで画像のバイナリデータを返却するようなAPIを使っていたのですが、それが悪かったみたい。

レスポンスヘッダの設定とかが悪いのかな。よくわらからないけど、とりあえず原因がはっきりしてよかった!

フォローお願いします!

コメント

  1. よし より:

    コメント失礼します!
    私も同じ現象になっており、、、
    具体的な記載方法を知りたいです!

    • marine より:

      コメントありがとうございます!

      私の場合は、
      http://xxxx.com/php/image/01 のようなアドレスで画像を取得していのですが、多分そのResponseの返し方が良くないらしくエラーとなっていました。
      上記のアドレスは外部サイト(入力文字を画像に生成してくれる)を参照していたたため、Responseの戻し方を修正することも出来なかったので、画像を使用しない。という対処をして回避しました。

      他の回避の策としては、一旦そのResponseを受けて、jpgなりpngなりで保存するかBase64でデータ化して・・・みたいなことをすれば出来たかもしれませんが、
      そこまで重要な画像でもなかったので上記のような対処となった次第です。。。

      よしさんの状況と同様かどうかはわかりませんが、参考になれば幸いです。

タイトルとURLをコピーしました