【LINE Notify】Java17でLine Notify のAPIを使うには?
投稿 2023年11月26日
最終更新 2023年11月26日
専門用語多め
JavaでLINE Notify API
LINE Notify APIをJavaで実行します。
バージョンはJava17です。
curlなどでやっている記事はいくつかありますが、
Javaでやっている記事が見当たらなかったので、やってみました。
前提
LINE Notify APIの実行環境は、整っている前提で話を進めます。
※curlなどでLINE Notify APIをたたける前提
もしまだ環境が整っていない方は、整えてからご覧ください。
コード
Java
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpRequest.BodyPublishers;
import java.net.http.HttpResponse;
import java.net.http.HttpResponse.BodyHandlers;
public class LineAPI {
public static void main(String[] args) {
// アクセストークン
String token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
// 送信したいメッセージ
String msg = "はじめまして\nよろしく!";
// リクエスト用に成形
String apiUrl = "https://notify-api.line.me/api/notify";
String body = "message=" + msg;
// リクエスト作成
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create(apiUrl))
.header("content-type", "application/x-www-form-urlencoded")
.header("Authorization", "Bearer" + token)
.method("POST", BodyPublishers.ofString(body))
.build();
// リクエスト送信しレスポンス取得
String response = HttpClient.newHttpClient()
.send(request, BodyHandlers.ofString())
.body();
System.out.println(response);
}
}
curl
curl --request POST \
--url https://notify-api.line.me/api/notify \
--header 'content-type: application/x-www-form-urlencoded' \
--header 'Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx' \
--data 'message=はじめましてよろしく!'
リンク
GitHubにもメソッド版を上げています。
そちらも参考にどうぞ。
まとめ
PHPやcurlは検索すれば出てくるとは思いますが、Javaが思ったより出てこなかったので書いてみました。
どうすれば出来るかを考えるのは楽しいです!
仕組みさえわかれば、どうにかなるもんですね。
以上、ここまで見ていただきありがとうございます。
皆さまの快適な開発ライフに、ほんの少しでもお役に立てれば幸いです。