質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.02%
LINE Messaging API

LINE Messaging APIは、メッセージの送信・返信ができるAPIです。Web APIを経由しアプリケーションサーバとLINEのAPIでやり取りが可能。複数のメッセージタイプや分かりやすいAPIリファレンスを持ち、グループチャットにも対応しています。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Apache Tomcat

Apache TomcatはApache Software Foundation (ASF)で開発されたオープンソースのWebコンテナです。

Q&A

解決済

Line Messaging Apiで画像が読み込まれない問題

Shion_Ichikawa
Shion_Ichikawa

総合スコア56

LINE Messaging API

LINE Messaging APIは、メッセージの送信・返信ができるAPIです。Web APIを経由しアプリケーションサーバとLINEのAPIでやり取りが可能。複数のメッセージタイプや分かりやすいAPIリファレンスを持ち、グループチャットにも対応しています。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Apache Tomcat

Apache TomcatはApache Software Foundation (ASF)で開発されたオープンソースのWebコンテナです。

1回答

0グッド

0クリップ

680閲覧

投稿2022/01/21 02:48

前提・実現したいこと

Tomcat環境からLineMessagingApiを通じてリクエストを出し、画像が含まれたメッセージを投稿すること
とりあえず、FlexMessage内で以下の画像を指定したときにしっかりとメッセージに表示されるようにしたい。
https://shion1305.com/Lumos/image/706873888461684866.png

発生している問題・エラーメッセージ

LineMessagingApiリクエスト自体は成功していて、
メッセージはしっかり届いているが、画像だけが読み込めない状態である。(画像はスペースだけ空いて空白になっている。)

自分のサーバー(Apache Httpdからtomcatへプロキシー転送)で
画像データをホスティングさせていて、ブラウザではしっかりアクセスできているが、
LineBotに送信すると画像が全く表示されない。
アクセスログも調べたが、Lineによるものらしきアクセス履歴が確認できなかった

該当のソースコード

LineMessagingApiリクエストの送信についてはGithubにて参照お願いしたいです。
https://github.com/shion1305/ProjectLumos/blob/master/src/main/java/com/shion1305/lumos/LineSender1.java

試したこと

プロキシー設定は確認しました。
ポートを80番と443番に絞っているのでもしかしたらそこで引っかかっている可能性はあるが、
そこが原因かわからない

補足情報(FW/ツールのバージョンなど)

ちなみに、画像のホスティングは以下のコードです。
高速化のために、いちいち読み込み出すのではなく、事前に実行コード内に格納しておくようしています。
https://github.com/shion1305/ProjectLumos/blob/master/src/main/java/com/shion1305/lumos/ImageHandler.java

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

回答1

0

自己解決

Line Developer Communityで質問したところ、
画像ホスティング先への接続がTLSv1.2以上のセキュリティ接続に正しく対応していないことが原因であることが判明しました。
https://www.line-community.me/ja/question/61ea1c2869e9a522434aaa81
主にどれが解決への決め手となったかは不明ですが、
以下の事を試しました。

  • Apache Httpdのhttpd.conf,conf.d内のssl.confとかをいじくってtlsv1.2接続に限定させる
  • Tomcatのweb.xmlにSecurity Constriantを設定してsslに明示的に対応させる
  • SSL証明書を再配置したり再発行したりして信頼できるものになっている確かめる(自分の場合はlets encryptのcertbotを使用しているのでcertbotを使用して更新作業を行った)

などなど

投稿2022/01/21 17:07

編集2022/01/21 17:08
Shion_Ichikawa

総合スコア56

下記のような回答は推奨されていません。

  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.02%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

LINE Messaging API

LINE Messaging APIは、メッセージの送信・返信ができるAPIです。Web APIを経由しアプリケーションサーバとLINEのAPIでやり取りが可能。複数のメッセージタイプや分かりやすいAPIリファレンスを持ち、グループチャットにも対応しています。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Apache Tomcat

Apache TomcatはApache Software Foundation (ASF)で開発されたオープンソースのWebコンテナです。