为什么类似的路由不工作在express.js的例子Get,post,patch,delete



谁能帮我添加第二条路由后只有一条路由是正常的

我无法触发第二条路由得到误差

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Error</title>
</head>
<body>
<pre>Cannot GET /api/sellProduct1</pre>
</body>
</html>

注意:请不要建议改变路由名称,我很好奇为什么他们不使用相同的路由,但我使用不同的方法,如post,get,delete。请问有谁能帮上忙吗?

var mongoose = require('mongoose');
var express = require('express');
var router = express.Router();
var productModel = require("./productSchema");
// Connecting to database
var query = 'mongodb://127.0.0.1:27017/mylibs'
const db = (query);
mongoose.Promise = global.Promise;
mongoose.connect(db, {
useNewUrlParser: true,
useUnifiedTopology: true
}, function (error) {
if (error) {
console.log("Error!" + error);
}
});
router.get("/", (req, res) => {
res.send("welcome");
});
// find product by productname
router.get("/sellProduct:product", function (req, res) {
productModel.findOne({ productName: req.query.product },
function (err, data) {
if (err) {
console.log(err);
}
else {
res.send(data);
}
});
});

router.post('/sellProduct', function (req, res) {
var newProduct = new productModel({
productName: req.body.productName,
costPrice: req.body.costPrice,
sellPrice: 0
});
newProduct.save(function (err, data) {
if (err) {
console.log(error);
}
else {
res.send("Data inserted");
}
});
});

你应该这样访问路由:

/api/sellProduct/1

相关内容

  • 没有找到相关文章

最新更新