「Laravel」でAPIを実装する場合、テスト機能を使用して実装に問題がないか確認する事ができます。
しかし、「Lumen」では「php artisan test」が使用できません。
「Lumen」でのテスト方法をまとめます。
Web開発
「Nuxt3」で「PWA」アプリを開発する
以前に「Nuxt3」のアプリ開発で問題として「PWA」のライブラリでエラーとなると記述しました。 「PWA」について詳細は解説しませんが、大雑把にいうとWebページをアプリケーションの様に使用できる仕組みです。どうしても […]
「Nuxt.js」+「TypeScript」でWebアプリの開発
以前に「Next.js」+「TypeScript」でWebアプリの環境構築をしましたが、今回は「Nuxt.js」+「TypeScript」となります。
「Nuxt.js」は「Vue.js」を使用して開発するフレームワークとなります。
Macで「sed」ではなく「gsed」を使用しよう
シェルスクリプトでファイル内の文字を置換する場合には、「sed」コマンドを使用しますが、Macでは改行コード等が上手く読み込めないため、「gnu-sed」をインストールする必要があります。
Dockerイメージを作り直す
すでに作成したDockerイメージでしたが、「Dockerfile」に問題があったために再度作り直すことになりました。
以前作成したDockerイメージを削除して作り直すだけですが、メモとしてまとめておきます。
またDockerは「docker-compose」で管理した状態となります。
「rsync」を使ってサーバーにデプロイする
ファイルのデプロイを行うのに「WinSCP」や「FileZilla」を使用することがありますが、ファイル構成を同期する「rsync」を使用した方が圧倒的に便利です。
そこで今回はMac上で「rsync」を使用して開発プログラムをサーバーにデプロイする方法をまとめます。
「Lumen」で「Job」を使用して非同期処理
「Lumen」でAPI開発時に処理が長い箇所があり、結果を問わない内容でしたので非同期で処理をする様にしました。
「Laravel」では「Job」を使用する方法の情報はありましたが、「Lumen」での情報が少なかったので記事にまとめました。
「ngrok」を使用してwebhookの開発
外部サービスの「webhook」を使った開発ではローカルで開発した場合にデバッグなどが難しいです。
そこで「ngrok」を使用して開発することで一時的に外部URLを作成してローカルのサーバーと連携してデバッグすることが可能となります。
【Laravel】CORSの許可設定を行う
バックエンドとフロントエンドのホスト、ポートが違う場合にアクセスするとCORSエラーとなります。
この場合、バックエンド側でCORS対策をする必要があり、「Laravel/Lumen」でCORS対策する方法をまとめました。
「lumen」でWebAPIを開発する
WebAPIなどの複雑な処理をしない開発の場合は「Laravel」よりも「lumen」を使用した方が良いかとおもいます。
「Laravel」から最低限の機能だけにした「lumen」は軽量で処理も早くなります。