javascript - 节点 js 和 mongo API:错误:套接字挂断
问题描述
我正在尝试使用带有 mongodb 的节点 JS(express 和 jwt)制作 API。我已经制作了一些路线(例如获取标记),效果很好。
但我也制定了路线以张贴一些标记。当我查询它(这需要很长时间,并且使用 Postman)时,我有一个错误,例如:“无法得到任何响应”并且在我的控制台中:错误:套接字挂断
我的路线控制器:
const model = require('../models/markers');
module.exports = {
create: function(req, res, next) {
model.create({
param_1: req.body.param_1,
param_2: req.body.param_2,
param_3: req.body.param_3,
}, function (err, result) {
if (err)
next(err);
else
res.json({status: "success", message: "Marker added successfully", data: null});
});
},
getAll: function(req, res, next) {
let list = [];
model.find({}, function(err, items){
if (err){
next(err);
} else{
for (let item of items) {
list.push({
id: item._id,
param_1: item.param_1,
param_2 : item.param_2,
param_3: item.param_3
});
}
res.json({status:"success", message: "Markers list found", data:{markers: list}});
}
});
},
};
对于我的路线:
const express = require('express');
const router = express.Router();
const markerController = require('../controllers/markers');
router.get('/', markerController.getAll);
router.post('/', markerController.create);
module.exports = router;
我的模型:
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const MarkerSchema = new Schema({
param_1: {
type: String,
required: true
},
param_2: {
type: String,
},
param_3: {
type: [{
type: String,
enum: ['0.5', '1', ',1.25', '1.5', '2', '3+']
}],
default: ['pending']
}
});
module.exports = mongoose.model('Marker', MarkerSchema);
我的 get 路由器工作正常,但我的 post 路由却不行。
解决方案
你应该检查@Will Alexander 的评论,如果是复制粘贴,你有错字:
param_2:req.bodyparam_2,
推荐阅读
- python - Python 字符比较
- asp.net-mvc - ASP:ASP 中继器中的文本框在回发后未重新绑定
- css - SCSS 脚本在保存文件时创建嵌套的 css 目录
- arangodb - Foxx 服务:很多还是一个?
- iis - 不断在 webapp 上遇到丢失的包
- javascript - 使用一个 JavaScript 循环将单选按钮值与对象进行比较
- async-await - 为什么这个 xunit 测试死锁(在单个 cpu VM 上)?
- javascript - Mapbox gl js从firebase数据库添加一个标记
- sql - 如何创建创建表以记录错误的触发器?
- python - python忽略成绩计算器中的if语句