我有一个使用本地json文件作为数据库的Express服务器。我正在使用https://github.com/typicode/lowdb来进行读取和设置。
目前,服务器一直在启动和重新启动,没有任何问题,但无法访问。以下是我的Server.js文件:
import express from 'express'
import session from 'express-session'
import bodyParser from 'body-parser'
import promisify from 'es6-promisify'
import cors from 'cors'
import low from 'lowdb'
import fileAsync from 'lowdb/lib/storages/file-async'
import defaultdb from './models/Pages'
import routes from './routes/index.js'
const app = express();
const db = low('./core/db/index.json', { storage: fileAsync })
app.use(cors())
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use('/', routes);
app.set('port', process.env.PORT || 1337);
db.defaults(defaultdb).write().then(() => {
const server = app.listen(app.get('port'), () => {
console.log(`Express running → PORT ${server.address().port}`);
});
});
有人之前遇到过这样的问题吗?我认为这与这行代码有关:
db.defaults(defaultdb).write().then(() => {
const server = app.listen(app.get('port'), () => {
console.log(`Express running → PORT ${server.address().port}`);
});
});
db.defaults(defaultdb).write()
。由于它在启动时执行,你将会遇到上述的无限循环问题。 - Andrew Sinner