Mongodb NodeJS - 如何从异步函数插入现有对象

时间:2017-07-23 10:45:21

标签: node.js mongodb asynchronous

所以我试图学习一点NodeJS并使用mongoDB。 到目前为止它非常有趣,但我需要帮助完成下一步:我试图从异步函数插入到集合中。 由于该函数是异步的,因此插入在它必须插入的信息返回之前完成。

无论如何,我试图插入一个基本上从函数中获取的对象并且似乎无法正确地执行此操作,任何人都可以指向正确的方向吗?

这里是github,以便您可以使用我使用的npm模块,以下是代码:

var MongoClient = require('mongodb').MongoClient
  , assert = require('assert');

const KrakenClient = require('@warren-bank/node-kraken-api')
const kraken = new KrakenClient('api_key', 'api_secret', {timeout: 10000})


var url = 'mongodb://localhost:27017/mongoTuto';

MongoClient.connect(url, function(err, db) {
  assert.equal(null, err);
  console.log("Connected to the server.");
  insertDocuments(db, function() {
      db.close();
  });

});

var insertDocuments = function(db, callback) {

  var collection = db.collection('documents');

  collection.insertOne({
    ticker
  }, function(err, result) {
    assert.equal(err, null);
    console.log("Inserted documents into the collection");
    callback(result);
  });
}

var ticker = kraken.api('Ticker', {"pair": 'XXBTZEUR'})
                .then((result) => {
                  result
                })
                .catch((error) => {
                  console.log('Error:', error.message)
                });

提前感谢您的帮助,并抱歉这个非常无聊的问题!

0 个答案:

没有答案