无法通过邮递员将新变量发布到我的路线

时间:2019-05-23 08:49:20

标签: javascript node.js

昨天,我试图通过邮递员发布新的“门票”,并且这种方法有效。今天,我再次尝试,但收到“未定义uuidv1”错误。

这是我的TicketRoutes.js中的代码:

var express = require('express');
var routes = express.Router();
//var mongodb = require('../config/mongo.db');
var Account = require('../models/Account');
var Ticket = require('../models/Ticket');
var Product = require('../models/Product');
var Order = require('../models/Order');

var TopicPublisher = require('../messaging/publishers/TopicPublisher');

routes.get('/', function (req, res, next) {
    Ticket.find({})
        .then((tickets) => res.status(200).send(tickets))
        .catch(next);
});

routes.get('/:id', function (req, res, next) {
        Ticket.findOne({Id: req.params.id})
        .then((ticket) => res.status(200).send(ticket))
        .catch(next);
});

routes.post('/', function(req, res, err) {

    var new_ticket = new Ticket({
        id: uuidv1(),
        account_id: req.body.account_id,
        title: req.body.title,
        description: req.body.description,
        order: req.body.order
    });

    console.log(newTicket.Id);

    new_ticket.save(function(err, task) {
        if (err){
            res.send(err);
        }
        TopicPublisher.sendMessageWithTopic(JSON.stringify(new_ticket),"ticket.created");
        res.json(req.body);
    })
});

routes.put('/:id', function (req, res, next) {
         ticketId = req.params.id;
         const updatedTicket = req.body;

    Ticket.findOneAndUpdate({Id: ticketId}, updatedTicket)
    .then(ticket => res.send(ticket))

    .catch(next);
});

routes.delete('/:id', function (req, res, next) {
    Ticket.findOneAndDelete({Id: req.params.id})
        .then((ticket) => res.status(200).send(ticket))
        .catch(next);
});

module.exports = routes;

我在CMD中遇到的错误:

C:\Users\Yoki\Desktop\Amabol\src\routes\TicketRoutes.js:25:22
    at Layer.handle [as handle_request] (C:\Users\Yoki\Desktop\Amabol\node_modules\express\lib\router\layer.js:95:5)
    at next (C:\Users\Yoki\Desktop\Amabol\node_modules\express\lib\router\route.js:137:13)
    at Route.dispatch (C:\Users\Yoki\Desktop\Amabol\node_modules\express\lib\router\route.js:112:3)
    at Layer.handle [as handle_request] (C:\Users\Yoki\Desktop\Amabol\node_modules\express\lib\router\layer.js:95:5)
    at C:\Users\Yoki\Desktop\Amabol\node_modules\express\lib\router\index.js:281:22
    at Function.process_params (C:\Users\Yoki\Desktop\Amabol\node_modules\express\lib\router\index.js:335:12)

0 个答案:

没有答案