このプロジェクトは、Laravelで構成されたREST APIです。指定したn番目のフィボナッチ数を返すエンドポイントを提供します。
ここでは説明を省きます。
フィボナッチ数を知らない方向けにここからウィキペディアに飛べるようにしておきます。
- PHP: 8.3
- Laravel: 10.x
- CI/CD: GitHub Actions
- デプロイ環境: Heroku
- デプロイ先URL: https://infinite-retreat-29466-b58771f08bbf.herokuapp.com
.
├── app
│ ├── Http
│ │ └── Controllers
│ │ └── Api
│ │ └── FibonacciController.php
│ ├── Requests
│ │ └── FibonacciRequest.php
│ │
│ └── ...
├── routes
│ ├── api.php
│ │
│ └── ...
├── tests
│ ├── Unit
│ │ └── FibonacciTest.php
│ └── ...
├── ...
├── .env
├── .env.example
├── .gitignore
├── Procfile
├── composer.json
├── package.json
└── README.md
-
app/Http/Controllers/Api/FibonacciController.php: フィボナッチ数の計算ロジック -
app/Requests/FibonacciRequest.php: フィボナッチ数の要求の検証ロジック -
routes/api.php: API エンドポイントのルートの定義ファイル -
tests/Unit/FibonacciTest.php: フィボナッチAPIのユニットテスト -
Procfile: Herokuでアプリケーションのプロセスの実行方法を指定するためのファイル -
その他の Laravel 標準ディレクトリとファイルもプロジェクトに含まれています。
GET /api/fib/?n={n}
n番目のフィボナッチ数を返します。
詳細なAPIの仕様についてはAPI仕様書を見てください。
n番目のフィボナッチ数を取得するには、以下のGETリクエストを送信してください。
https://infinite-retreat-29466-b58771f08bbf.herokuapp.com/api/fib/?n={n}
{n}を取得したいフィボナッチ数のインデックスに置き換えてください。
git clone https://github.com/f-yusei/fib_api.git
cd fib_api
composer install
cp .env.example .env
php artisan key:generate
php artisan serve
curlコマンドでサーバーが起動していることを確認できたら環境構築成功です
curl -X GET -H "Content-Type: application/json" "http://127.0.0.1:8000/api/fib?n=8"
php artisan test
[Prefix] コミット内容
feat 〇〇なため、△△を追加
feat: 新しい機能
fix: バグの修正
docs: ドキュメントのみの変更
style: 空白、フォーマット、セミコロン追加など
refactor: 仕様に影響がないコード改善(リファクタ)
perf: パフォーマンス向上関連
test: テスト関連
chore: ビルド、補助ツール、ライブラリ関連