弊社ではフォトシンス社のAkerunというスマートロックと連携するシステムの開発をしています。
AkerunにはAPIが用意されているので、そのAPIを利用してAkerunの情報を取得する等が可能です。
今回はLaravelを利用して外部APIへアクセスする方法についてご紹介いたします。
LaravelにはGuzzleというライブラリがあるので、それを利用してAPIへアクセスします。
docs.guzzlephp.org
Guzzleのインストール
以下のコマンドでGuzzleをインストールします。 (composerはインストールされている前提です)
composer require guzzlehttp/guzzle
API呼び出しの実装
以下に実装例を記載します。
<?php use GuzzleHttp\Client; class ApiAccessor { public function getAccesses() { $url = "https://api.akerun.com/v3/organizations/{ORGANIZATION_ID}/accesses"; // Guzzleを使ってAPIに接続 $client = new Client(); $response = $client->request( 'GET', $url, // URLを設定 [ 'headers' => [ 'Authorization' => "Bearer {$accessToken}" ], 'debug' => false, 'query' => $params, // パラメーターがあれば設定 ?foo=barの場合は $params = ['foo' => 'bar'] ] ); // レスポンスボディを取得 $responseBody = $response->getBody()->getContents(); return json_decode($responseBody); } }
GuzzleのClientクラスのrequestメソッドを利用してアクセスします。
requestメソッドには、メソッド(今回はGET)、APIのURL、ヘッダー情報、パラメータ(query)をセットしています。
アクセスして取得したResponseBodyのContentsのJsonをデコードします。
簡単ですね。
最後に
弊社ではAkerunと連携したシステム開発のご対応が可能です。
もし、Akerunと連携したシステム開発についてご相談やご質問・その他ご不明な点などございましたら、以下の問合せフォームよりお気軽にご連絡ください。
その他システム開発についてもお気軽にご連絡ください。
10yro.co.jp