我正在尝试使用nodejs将一些数据插入到我的数据库(mysql)中,并且我已经做了一些代码,但是在邮递员中,它显示无法获得任何响应,即使我知道我遵循了正确地看了我看过的一些教程。
这是我的代码
SendOrder.js(模型)
var db=require('../dbconnection');
var Task = {
addTask:function(Task,callback){
return db.query("Insert into orders ( order_id, order_no, tbl_id, menu_id, \
order_quantity, order_discount, order_type, \
order_amount, menu_name, menu_price ) values(?,?,?,?,?,?,?,?,?,?)",
[
Task.order_id, Task.order_no, Task.tbl_id, Task.menu_id,
Task.order_quantity, Task.order_discount, Task.order_type,
Task.order_amount, Task.menu_name, Task.menu_price
], callback);
},
}
module.exports=Task;
SendOrder.js(路由器)
var express = require('express');
var router = express.Router();
var Task = require('../models/SendOrder');
router.post('Send/', function(req, res, next){
Task.addTask(req.body,function(err,count){
console.log(req.body);
if(err)
{
res.json(err);
}
else{
res.json(req.body);
}
});
});
module.exports = router;
编辑:
dbconnection.js
var mysql=require('mysql');
var connection=mysql.createConnection({
host: 'localhost',
user: 'root',
password: '',
database: 'opob',
});
module.exports=connection;
app.js
var createError = require('http-errors');
var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var logger = require('morgan');
var mysql = require('mysql');
var connection = require('express-myconnection')
var SendOrder = require('./routes/SendOrder'); // SendOrder
var app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use('/SendOrder', SendOrder); // SendOrder
// catch 404 and forward to error handler
app.use(function(req, res, next) {
next(createError(404));
});
// error handler
app.use(function(err, req, res, next) {
// set locals, only providing error in development
res.locals.message = err.message;
res.locals.error = req.app.get('env') === 'development' ? err : {};
// render the error page
res.status(err.status || 500);
res.render('error');
});
module.exports = app;
答案 0 :(得分:0)
在这里您共享的所有内容都有以下可能性:
Send/
API时服务器崩溃。如果问题出在您的代码上,则很可能是原因。在这种情况下,您可以检查服务器控制台以查找崩溃日志和堆栈跟踪。 @Hardik在评论中提到的网址不是错误的URL,因为它将返回404。
答案 1 :(得分:0)
转到邮递员中的设置
如果两种方法都不起作用,请尝试以下代码:
if(err)
{
return res.status(500).json(err);
}
else{
return res.status(200).json(req.body);
}
希望,这可能会对您有所帮助!
查看您的app.js
文件。看来您需要使用body-parser
包来解析请求中的JSON数据。
npm install body-parser --save
body-parser提取传入请求流的整个正文部分,并将其公开在req.body上。