【问题标题】:Getting TypeError: Unknown encoding: 1 while running the server script with Mongoose使用 Mongoose 运行服务器脚本时出现 TypeError: Unknown encoding: 1
【发布时间】:2017-05-18 08:26:45
【问题描述】:

我正在运行以下代码,以使用 Mongoose 将水果名称插入数据库。它确实插入了对象,但随后抛出 TypeError: Unknown encoding: 1 并退出脚本。我尝试更新 Mongoose 和 Mongo,但没有解决问题。

var mongoose = require('mongoose');
var assert = require('assert');
var Fruits = require('./models/fruits-1');
var url = 'mongodb://localhost:27017/confusion';
mongoose.connect(url);
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function(){
    Fruits.create(
        {
            name: 'Apple',
            description: "It's delicious."
        }, function(err, fruit){
            if(err){
                console.log(err);
            }
            else{
                console.log(fruit);
            }
    });
});

【问题讨论】:

  • server-2.js 文件的第 24 行有什么内容?错误似乎来自那里。
  • @BlazeSahlzen 抱歉,我在上面发布的代码中只有 21 行。
  • 可能这个issue 和猫鼬

标签: javascript node.js mongodb mongoose mean-stack


【解决方案1】:

我有一个不好的解决方案,删除 console.log(fruit)。

我现在在 Fedora 25 上遇到了同样的问题,使用相同的代码。 它今天在 Ubuntu 14.04 上正常运行。

他们都使用带有 v6 的 Nvm。

【讨论】:

  • 哇,它起作用了,任何线索为什么它不允许我们记录我们刚刚输入的对象?对我来说似乎是一个错误。
  • 这可能是 Blaze Sahlzen 在您问题的 cmets 中链接的问题。我实际上使用的是 bson 1.0.2,你也可能。
【解决方案2】:

真正的解决方案是将您的 bson 更新到 1.0.3 - 请参阅 this issue(感谢 Blaze Sahlzen)。

【讨论】:

    猜你喜欢
    • 2020-05-05
    • 1970-01-01
    • 2018-07-11
    • 1970-01-01
    • 2021-04-13
    • 2022-10-21
    • 2021-09-27
    • 2015-01-01
    • 2021-03-13
    相关资源
    最近更新 更多