Mongoose: RangeError: url рдореЗрдВ jsonwebtoken рдЬреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рдж рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдбреЗрдЯрд╛ рдЕрдкрдбреЗрдЯ рдХрд░рддреЗ рд╕рдордп рдЕрдзрд┐рдХрддрдо рдХреЙрд▓ рд╕реНрдЯреИрдХ рдЖрдХрд╛рд░ рдкрд╛рд░ рд╣реЛ рдЧрдпрд╛

рдХреЛ рдирд┐рд░реНрдорд┐рдд 7 рдорд╛рд░реНрдЪ 2018  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: Automattic/mongoose

рдореЗрд░реЗ рдРрдк рдореЗрдВ (рдПрдХ рдореИрд╕реЗрдВрдЬрд░ рдРрдк, рдЬрдм рдореИрдВ рдирдП рд╕рдВрджреЗрд╢ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реВрдВ, рд╕рдВрджреЗрд╢ (рд╕реНрдЯреНрд░рд┐рдВрдЧ) рдЗрдирдкреБрдЯ рдореЗрдВ, рдФрд░ рд╕рдмрдорд┐рдЯ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдиреЛрдб рд╕рд░реНрд╡рд░ рдореБрдЭреЗ рдиреАрдЪреЗ рддреНрд░реБрдЯрд┐ рджреЗрддреЗ рд╣реБрдП рдмрдВрдж рдХрд░ рджреЗрддрд╛ рд╣реИ
рд╣рд╛рд▓рд╛рдВрдХрд┐ рдирдпрд╛ рд╕рдВрджреЗрд╢ рдЬреЛ рдореИрдВ рдЗрдирдкреБрдЯ рдлреЙрд░реНрдо рдореЗрдВ рдЬрдорд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рд╡рд╣ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИред рдФрд░ рдЬрдм рдореИрдВ рдиреЛрдб рд╕рд░реНрд╡рд░ рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдпрд╣ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИред

/home/paul/codes/ng2/Seed-MEAN-Feb18-WIP/node_modules/mongodb/lib/utils.js:132
      throw err;
      ^

RangeError: Maximum call stack size exceeded
    at model.Document.$toObject (/home/paul/codes/ng2/Seed-MEAN-Feb18-WIP/node_modules/mongoose/lib/document.js:2058:40)
    at model.Document.toJSON (/home/paul/codes/ng2/Seed-MEAN-Feb18-WIP/node_modules/mongoose/lib/document.js:2401:15)
    at clone (/home/paul/codes/ng2/Seed-MEAN-Feb18-WIP/node_modules/mongoose/lib/utils.js:164:18)
    at cloneObject (/home/paul/codes/ng2/Seed-MEAN-Feb18-WIP/node_modules/mongoose/lib/utils.js:246:11)
    at clone (/home/paul/codes/ng2/Seed-MEAN-Feb18-WIP/node_modules/mongoose/lib/utils.js:172:16)
    at model.Document.$toObject (/home/paul/codes/ng2/Seed-MEAN-Feb18-WIP/node_modules/mongoose/lib/document.js:2109:13)
    at model.Document.toJSON (/home/paul/codes/ng2/Seed-MEAN-Feb18-WIP/node_modules/mongoose/lib/document.js:2401:15)
    at clone (/home/paul/codes/ng2/Seed-MEAN-Feb18-WIP/node_modules/mongoose/lib/utils.js:164:18)
    at cloneArray (/home/paul/codes/ng2/Seed-MEAN-Feb18-WIP/node_modules/mongoose/lib/utils.js:260:14)
    at clone (/home/paul/codes/ng2/Seed-MEAN-Feb18-WIP/node_modules/mongoose/lib/utils.js:159:12)
    at cloneObject (/home/paul/codes/ng2/Seed-MEAN-Feb18-WIP/node_modules/mongoose/lib/utils.js:246:11)
    at clone (/home/paul/codes/ng2/Seed-MEAN-Feb18-WIP/node_modules/mongoose/lib/utils.js:172:16)
    at model.Document.$toObject (/home/paul/codes/ng2/Seed-MEAN-Feb18-WIP/node_modules/mongoose/lib/document.js:2109:13)
    at model.Document.toJSON (/home/paul/codes/ng2/Seed-MEAN-Feb18-WIP/node_modules/mongoose/lib/document.js:2401:15)
    at clone (/home/paul/codes/ng2/Seed-MEAN-Feb18-WIP/node_modules/mongoose/lib/utils.js:164:18)
    at cloneObject (/home/paul/codes/ng2/Seed-MEAN-Feb18-WIP/node_modules/mongoose/lib/utils.js:246:11)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] start: `node ./bin/www`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/paul/.npm/_logs/2018-03-07T12_32_54_826Z-debug.log

рдореЗрд░реЗ ../models/messages.js . рдореЗрдВ рд╕рд╛рдордЧреНрд░реА

var mongoose = require('mongoose');
var Schema = mongoose.Schema;

var User = require('./user');

var schema = new Schema({
    content: {type: String, required: true},
    user: {type: Schema.Types.ObjectId, ref: 'User'}
});

schema.post('remove', function (message) {
    User.findById(message.user, function (err, user) {
        user.messages.pull(message);
        user.save();
    });
});

module.exports = mongoose.model('Message', schema);

рдореЗрд░реЗ post url рдореЗрдВ рдЯреЛрдХрди рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП ./message/message.service.ts рдлрд╝рд╛рдЗрд▓ рдореЗрдВ jsonwebtoken рдХреЗ рд▓рд┐рдП рдХреЛрдб рдбрд╛рд▓рдиреЗ рдХреЗ рдмрд╛рдж рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣реЛрдиреЗ рд▓рдЧреАред

addMessage(message: Message) {
        const body = JSON.stringify(message);
        const headers = new Headers({'Content-Type': 'application/json'});
        const token = localStorage.getItem('token')
            ? '?token=' + localStorage.getItem('token')
            : '';
        return this.http.post('http://localhost:3000/message' + token, body, {headers: headers})
            .map((response: Response) => {
                const result = response.json();
                const message = new Message(
                    result.obj.content,
                    result.obj.user.firstName,
                    result.obj._id,
                    result.obj.user._id);
                this.messages.push(message);
                return message;
            })
            .catch((error: Response) => Observable.throw(error.json()));
    }

рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдкреВрд░реНрдг рд╕реНрд░реЛрдд рдХреЛрдб - рдкреВрд░реНрдг рдХреЛрдб рдЖрдзрд╛рд░

рдХреГрдкрдпрд╛ рдЕрдкрдиреЗ node.js, mongoose рдФрд░ MongoDB рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░реЗрдВред
рдиреЛрдб - v9.3.0
рдореЛрдВрдЧреЛрдбрдм - рд╕рдВрд╕реНрдХрд░рдг v3.6.3
рдиреЗрд╡рд▓рд╛ - 5.0.9

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рд╣рд╛рдп @ рд░реЛрд╣рди-рдкреЙрд▓,

рд╕рдорд╕реНрдпрд╛ рдирд┐рд╡рд╛рд░рдг рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдореИрдВрдиреЗ рдЖрдкрдХреЗ рд░реЗрдкреЛ рдХреЛ рдХреНрд▓реЛрди рдХрд┐рдпрд╛ рд╣реИ рдФрд░ 2 рд▓рд╛рдЗрдиреЗрдВ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЗрд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрджрд▓рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ:

InspiredMacPro:rohan lineus$ git diff routes/messages.js 
diff --git a/routes/messages.js b/routes/messages.js
index 21996e0..5e3360d 100644
--- a/routes/messages.js
+++ b/routes/messages.js
@@ -45,7 +45,7 @@ router.post('/', function (req, res, next) {
         }
         var message = new Message({
             content: req.body.content,
-            user: user
+            user: user._id
         });
         message.save(function (err, result) {
             if (err) {
@@ -55,7 +55,7 @@ router.post('/', function (req, res, next) {
                 });
             }
             // Now because, I am connecting user with message, I have to save messages array in user model.
-            user.messages.push(result);
+            user.messages.push(result._id);
             user.save();
             res.status(201).json({
                 message: 'Saved message',

рдЗрди рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж* рдореИрдВ рдЗрд╕реЗ рдХреНрд░реИрд╢ рдХрд┐рдП рдмрд┐рдирд╛ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред
рдореЗрд░реЗ рдкрд╛рд╕ ts рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рд╛рд░реНрдердХ рдЕрдиреБрднрд╡ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдореБрдЭреЗ рдХреБрдЫ ts рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рдореВрд▓ рд╕рдВрдХрд▓рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ npm рдЗрдВрд╕реНрдЯрд╛рд▓ рдкрд░ рдПрдХ рддреНрд░реБрдЯрд┐ рдорд┐рд▓реА, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ ts рдореЗрдВ рдЦреЛрджреЗ рдмрд┐рдирд╛ JS рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ред рдЙрдореНрдореАрдж рд╣реИ рдпреЗ рдорджрдж рдХрд░реЗрдЧрд╛ред

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд╣рд╛рдп @ рд░реЛрд╣рди-рдкреЙрд▓,

рд╕рдорд╕реНрдпрд╛ рдирд┐рд╡рд╛рд░рдг рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдореИрдВрдиреЗ рдЖрдкрдХреЗ рд░реЗрдкреЛ рдХреЛ рдХреНрд▓реЛрди рдХрд┐рдпрд╛ рд╣реИ рдФрд░ 2 рд▓рд╛рдЗрдиреЗрдВ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдЗрд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрджрд▓рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ:

InspiredMacPro:rohan lineus$ git diff routes/messages.js 
diff --git a/routes/messages.js b/routes/messages.js
index 21996e0..5e3360d 100644
--- a/routes/messages.js
+++ b/routes/messages.js
@@ -45,7 +45,7 @@ router.post('/', function (req, res, next) {
         }
         var message = new Message({
             content: req.body.content,
-            user: user
+            user: user._id
         });
         message.save(function (err, result) {
             if (err) {
@@ -55,7 +55,7 @@ router.post('/', function (req, res, next) {
                 });
             }
             // Now because, I am connecting user with message, I have to save messages array in user model.
-            user.messages.push(result);
+            user.messages.push(result._id);
             user.save();
             res.status(201).json({
                 message: 'Saved message',

рдЗрди рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж* рдореИрдВ рдЗрд╕реЗ рдХреНрд░реИрд╢ рдХрд┐рдП рдмрд┐рдирд╛ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред
рдореЗрд░реЗ рдкрд╛рд╕ ts рдХреЗ рд╕рд╛рде рдХреЛрдИ рд╕рд╛рд░реНрдердХ рдЕрдиреБрднрд╡ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдореБрдЭреЗ рдХреБрдЫ ts рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рдореВрд▓ рд╕рдВрдХрд▓рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ npm рдЗрдВрд╕реНрдЯрд╛рд▓ рдкрд░ рдПрдХ рддреНрд░реБрдЯрд┐ рдорд┐рд▓реА, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ ts рдореЗрдВ рдЦреЛрджреЗ рдмрд┐рдирд╛ JS рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ред рдЙрдореНрдореАрдж рд╣реИ рдпреЗ рдорджрдж рдХрд░реЗрдЧрд╛ред

рдбреАрдмреАрдПрд╕ рджрд┐рдЦрд╛рдУ
рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ 0.078GB
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ 0.078GB
рд╕реНрдерд╛рдиреАрдп 0.078GB
mongoose_test 0.203GB
рдиреЛрдб-рдХреЛрдгреАрдп 0.078GB
рдкрд░реАрдХреНрд╖рдг 0.078GB
рдиреЛрдб-рдХреЛрдгреАрдп рдХрд╛ рдкреНрд░рдпреЛрдЧ рдХрд░реЗрдВ
рдбреАрдмреА рдиреЛрдб-рдХреЛрдгреАрдп рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛
рд╕рдВрдЧреНрд░рд╣ рджрд┐рдЦрд╛рдПрдВ
рд╕рдВрджреЗрд╢реЛрдВ
system.indexes
рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ
db.users.find ()ред рд╕реБрдВрджрд░ ()
{
"_id" : ObjectId ("5a9ff3800f2abba5379e8e93"),
"рдлрд░реНрд╕реНрдЯрдирд╛рдо": "рдлреНрд▓рд┐рдкреА",
"рдЕрдВрддрд┐рдо рдирд╛рдо": "рдореИрдХрдбреЛрдЧрд▓",
"рдкрд╛рд╕рд╡рд░реНрдб" : "$2a$10$J5H/BEKxik2SOt1b/vxWgOQIdNEERynejS7n6okj6JHTfhO/DySSG",
"рдИрдореЗрд▓": " [email protected] ",
"рд╕рдВрджреЗрд╢" : [
рдСрдмреНрдЬреЗрдХреНрдЯ рдЖрдИрдбреА ("5a9ff4fe079501a615a5f6ff"),
рдСрдмреНрдЬреЗрдХреНрдЯ рдЖрдИрдбреА ("5a9ff5d654a45ba796525206")
],
"__v" : 2
}

рд╣рд╛рдп @ рд▓рд╛рдЗрдирд╕ - рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ .. рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж ..

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

Mikeysax picture Mikeysax  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

tarun1793 picture tarun1793  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Igorpollo picture Igorpollo  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Soviut picture Soviut  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

adamreisnz picture adamreisnz  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ