😄
Next.js (pages router)のapi routeにて、apiコンテナと通信を行うメモ
Next.js (pages router)のapi routeにて、apiコンテナと通信を行うメモ
以下のようなディレクトリ構造の時。webはnginxコンテナでport 80が開いている。
.
├ web
├ app
├ docker-compose.yml
├ Dockerfile
コード
axiosのurlにdockerコンテナのサービス名を指定する。
export default async function handler(
req: NextApiRequest,
res: NextApiResponse<Data>
) {
try {
const response = await axios.get('http://web:80/api/message', {
headers: {
"Accept": "application/json"
}
})
res.status(200).json({ message: response.data.message })
} catch (e) {
if(e instanceof Error) {
res.status(200).json({ message: e.message })
}
throw e;
}
}
参考
最後に
間違っていることがあればコードがおかしいとかあればコメントに書いていただけると幸いです。
よろしくお願いいたします。
Discussion