PHP
api
laravel
laravel5

Laravelで実装したAPIを動作確認できるlaravel-api-testerを使ってみた

概要

APIを実装していて、プロジェクト内のAPIの仕様+動作確認できるものがないかなーと
探してみたらこんなものがあったので使ってみた。
asvae/laravel-api-tester

僕が動作確認したのはLaravel5.4でしたが、
Laravel5.1以上で動くらしいです。

できること

  • ルーティング一覧表示
  • リクエスト先のコントローラーやアクションメソッドなども見れる
  • GET/POST/DELETE/PUT/PATCH によるリクエスト
  • リクエスト用のJSONを書くためのエディタ付き
  • レスポンスもヘッダ・ボディともに確認できる(html, jsonのプレビュー付)
  • リクエストは保存可能

イメージ (readmeより)

image.png

導入

まずはインストール

composer require asvae/laravel-api-tester

からの
Asvae\ApiTester\ServiceProvider::class
config/app.php に追加するだけでおkです。

config/app.php


    'providers' => [
        Illuminate\Broadcasting\BroadcastServiceProvider::class,
        Illuminate\Bus\BusServiceProvider::class,
        Illuminate\Cache\CacheServiceProvider::class,
        .
        .
        Asvae\ApiTester\ServiceProvider::class, //追加
    ],


/api-tester にアクセスすると、ページが表示されると思います。

感想

良い

  • 見やすい。リクエストも保存できて便利

悪い

  • セッションが保持できない??
    • Laravelの make:auth で作成したログイン機能に対してPOSTリクエストでログインした結果、ログインは成功するもリダイレクト先で即座にunauthorizedを食らってしまった。
    • 認証付き(ログイン済みの場合のみ利用可能)のAPIは、ブラウザで通常通りログインをした状態で試してみたら一応動作しました。
  • エディタの動作が変
    • aceというエディタが仕様されているようですが、なぜかカーソルの位置とと入力される位置がずれていてきもい。。(僕だけ...?)
    • JSONを書く場合は別のエディタで書いてコピペしたほうが早いみたいになってしまったorz

これを使わなくても「こんな良いのあるぜ★」 的なものがあれば
ぜひ紹介してください(ノ_-。)