node.js - NodeJs 路由不起作用

标签 node.js api express

我是 NodeJs 新手。我收到以下代码错误。

    var express = require('express'),
    app = express(),
    bodyParser = require('body-parser'),
    port = process.env.PORT || 9090,
    mongoose = require('mongoose'),
    Cheque = require('./models/cheque'),
    router = express.Router();

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

mongoose.connect('http://localhost:27017/utils/chequeman');

router.route('/cheques').post(function (req, res) {
    console.log('u r in cheques.');
    var cheque = new Cheque();
    cheque.chequeReceiptDate = req.body.chequeReceiptDate;

    cheque.save(function (err) {
        if (err)
            res.send(err)

        res.json({ message: 'Cheque details added' });
    });
});


app.use('/api', router);
app.listen(port);
console.log('Magin happens at' + port);
<小时/>

当我在 postman 中尝试 POST 请求时,我收到的响应为“无法 POST/api/cheques”

请帮忙。

最佳答案

尝试声明您正在使用的变量。

let express = require('express');
let app = express();
let bodyParser = require('body-parser');
let port = process.env.PORT || 9090;
let mongoose = require('mongoose');
let Cheque = require('./models/cheque');
let router = express.Router();

将您的 API 静态化

app.use('/CHEQUEDIRECTORY',express.static(__dirname + '/CHEQUEDIRECTORY'))

不要忘记在 API 上导出模块。

您是否正确安装了软件包?

关于node.js - NodeJs 路由不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48340470/

相关文章:

node.js - 在 ExpressJS 中禁用 CORS

javascript - Sequelize - 简单更新不起作用

javascript - 如何显示当前最新日期?

jquery - 处理多个ajax请求和模板结果

Azure APIM 限制所有 IP 地址

node.js - Knex.js PostgreSQL 列引用 "id"不明确

java - 出现白页错误,无法在 REST API 中找到我的问题?

node.js - 在 Express 中多次 SELECT 查询后呈现 View

javascript - 类构造函数的未定义返回 - JavaScript

node.js - ExpressJS Router 不处理根路由