Javascript js服务器部分工作

Javascript js服务器部分工作,javascript,node.js,knex.js,Javascript,Node.js,Knex.js,在api文件夹中,我有3个js文件(calls.js、meetings.js、statistics.js)。所有文件看起来都一样: const express = require('express') const router = express.Router() var knex = require('knex')({ client: 'mysql', connection: { host : 'host', user : 'user',

在api文件夹中,我有3个js文件(calls.js、meetings.js、statistics.js)。所有文件看起来都一样:

const express = require('express')
const router = express.Router()

var knex = require('knex')({
    client: 'mysql',
    connection: {
      host : 'host',
      user : 'user',
      password : 'password',
      database : 'database'
    }
});

***knex functions***

module.exports = router
它们都以相同的方式添加到index.js文件中:

app.use('/api/calls', require('./routes/api/calls'))
app.use('/api/statistics', require('./routes/api/statistics'))
app.use('/api/meetings', require('./routes/api/meetings'))
出于某些原因,meetings.js会制造麻烦: 1.如果从meetings.js中删除所有knex功能,则一切正常; 2.如果删除index.js中的行
app.use('/api/meetings',require('./routes/api/meetings'))
,则一切正常; 否则,浏览器会显示:“无法访问此站点…连接出错\u超时”

meetings.js的完整代码:

const express = require('express')
const router = express.Router()

var knex = require('knex')({
    client: 'mysql',
    connection: {
      host : 'host',
      user : 'user',
      password : 'password',
      database : 'database'
    }
});


app.post('/newMeetingDay', (req, res) => {
  const city = req.body.city
  const date = req.body.date
  const scheduled = req.body.scheduled
  const happened = req.body.happened
  const adults = req.body.adults
  const children = req.body.children
  if (!city || !date || !scheduled || !happened || !adults || !children){
    return res.json({Error: 'details are missing'})
  }

  knex('MeetingDays').insert({City: city, Date: date, Scheduled: scheduled, Happened: happened, 
                              Adults: adults, Children: children}).then(data => {
    return res.json({Done: 'new meeting day saved'})
  }).catch(err => {
    return res.json({Error: err})
  })
})


module.exports = router

有人知道什么是问题吗?

发现了一个问题:在
meetings.js
中,函数应该是
router.post
,而不是
app.post

meeting.js中的一个错误。我建议发布
meetings.js
的所有代码,因为错误可能在knex函数中。否则任何人都很难提供帮助。@GillesC谢谢,张贴