无法在NodeJS上使用发布

时间:2018-08-22 05:59:07

标签: node.js express

因此,我尝试使用api localhost:3000 / api / comment /

将邮递员的3个字符串插入到我的mongo数据库中

我的数据库位于var fields = (screen as ITable).Fields; // returns property value of ITable Fields

我的server.js包含

mongodb://localhost:27017/commentbox

这是我的api.js的代码

var express = require('express');
var morgan = require('morgan');
var bodyParser = require('body-parser');
var config = require('./config');
var mongoose = require('mongoose');

var app = express();

app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());
app.use(morgan('dev'));

var api = require("./app/routes/api")(app, express);

api.use('/api', api);

app.get('*',(req, res)=>{
    res.sendFile(__dirname + '/public/views/index.html');
});

mongoose.connect(config.database, { useNewUrlParser: true },(err)=>{
    if(err){
        console.log(err);
    }else{
        console.log('Connected to DB');
    }
});



app.listen(config.port, (err) =>{ 
    if(err){
        console.log(err);
    }else{
        console.log('Listening on port:'+ config.port);
    }
});

当我尝试在邮递员上发布姓名,评论,日期(顺便说一下,这是3个字符串)时,我总是收到错误404

应该是什么问题?我已经完全按照指南进行操作

3 个答案:

答案 0 :(得分:4)

替换此行

api.use('/api', api);

有了这个

app.use(‘/api’, api);

答案 1 :(得分:0)

尝试将localhost切换到127.0.0.1或http://[::1]:3000

似乎有一个关于“本地主机”的常见问题报告,具体为:https://github.com/postmanlabs/postman-app-support/issues/2214

答案 2 :(得分:-1)

我认为您api.js模块错误。请删除返回api