LINE Front-end Framework(LIFF)でアプリケーションを開発したい - 8日目

昨日発生したエラーの解消から始めていきます。

postgres.jsを使用できるようにする

実装しただけで使っていなかったpostgres.jsを使用します。これを使えば昨日のエラーは発生しなくなるはずです。

postgres.js

const pool = new Pool({
   user: process.env.PG_USER,
   host: process.env.PG_HOST,
   database: process.env.PG_DATABASE,
   password: process.env.PG_PASSWORD,
   port: process.env.PG_PORT,
});
reservation.js

const express = require('express');
const router = express.Router();
const { Client } = require('pg');
const { getPostgresClient } = require('./postgres');

router.get('/', function (req, res) {
   render_reservation(req, res);
});

module.exports = router;

// ★★★ 関数 ★★★
async function render_reservation(req, res) {
   const db = await getPostgresClient();
   try {
       const sql = 'select * from m_facility';
       const content = await db.execute(sql);

       res.render('reservation', {
           content: content,
       });
   } catch (e) {
       throw e;
   } finally {
       await db.release();
   }
}

postgres.jsの接続先情報を書き換え、reservation.jsを大きく修正しました。ローカル環境で動くか試してみます。

スクリーンショット 2020-05-06 13.37.57

動きました。Herokuに反映し、LINE公式アカウントから動くか試してみます。

画像2

2回目以降の画面起動でもエラーが発生しなくなりました。

本日はここまで。連休最終日なのでかなり手を抜きました…。

この記事が気に入ったらサポートをしてみませんか?