LINE NotifyのAPIを使って通知を送りたい
下記のQiitaの記事を書くに当たり、LINEに通知を送る方法を調べました。
LINE Notifyを使って、PHPとcurlでLINEに通知を送る
その後、Guzzleというライブラリを使えばコードを短くかけることを知り、下記のように記述しました。
<?php require_once 'vendor/autoload.php'; use GuzzleHttp\Client; $uri = 'https://notify-api.line.me/api/notify'; $token = 'LINEトークン'; $message = 'Lineに通知を送ります'; $client = new Client(); $client->post($uri, [ 'headers' => [ 'Content-Type' => 'application/x-www-form-urlencoded', 'Authorization' => 'Bearer ' . $token ], 'form_params' => [ 'message' => $client->request('message', $message) ] ]);
しかし、エラーが出て処理が止まってしまいました。
エラー文
PHP Fatal error: Uncaught GuzzleHttp\Exception\ConnectException: cURL error 6: Could not resolve host: Line%E3_%AB%E9__%E7_%A5%E3__%E9__%E3__%E3_%BE%E3__ (see http://curl.haxx.se/libcurl/c/libcurl-errors.html) in /Users/username/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php:185 Stack trace: #0 /Users/username/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php(149): GuzzleHttp\Handler\CurlFactory::createRejection(Object(GuzzleHttp\Handler\EasyHandle), Array) #1 /Users/username/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php(102): GuzzleHttp\Handler\CurlFactory::finishError(Object(GuzzleHttp\Handler\CurlHandler), Object(GuzzleHttp\Handler\EasyHandle), Object(GuzzleHttp\Handler\CurlFactory)) #2 /Users/username/vendor/guzzlehttp/guzzle/src/Handler/CurlHandler.php(43): GuzzleHttp\Handler\CurlFactory::finish(Object(GuzzleHttp\Handler\CurlHandler), Object(GuzzleHttp\Handler\EasyHandle), Object(GuzzleHttp\Handler\CurlFactory)) #3 /Users/username/vendor/guzzlehttp/guzzle/src/Handler/Proxy.ph in /Users/username/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php on line 185
cURL error 6(Couldn't resolve host. The given remote host was not resolved.)という記述が含まれていたので、対処法を調べました。
しかし、cat /etc/resolv.conf
を実行して表示されるnameserverのIPアドレスを使ってpingコマンドを叩いて見ても、どれも応答がありました。
また、下記コマンドの場合、ちゃんと通知が届きます。
curl -X POST -H 'Authorization: Bearer <LINEトークン>' -F 'message=foobar' https://notify-api.line.me/api/notify
ここで詰まってしまったので、今回質問致しました。
足りない情報等あれば追記します。よろしくお願いします。
環境
macOS High Sierra 10.13.4
PHP 7.1.14
Guzzle 6.3

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。