Я взаимодействовал с твиттером, используя nodejs. Я пытаюсь зарегистрировать некоторые важные общедоступные пользовательские данные в базе данных mongolab mongodb. По какой-то причине я продолжаю получать "ошибку с ошибкой топологии". Я не совсем уверен, почему это так.
var Twitter = require('twitter');
var mongodb = require('mongodb');
var accounts = ['@zaynmalik',
'@ZooeyDeschanel'];
var client = new Twitter({
consumer_key: 'key',
consumer_secret: 'secret',
access_token_key: 'key',
access_token_secret: 'secret'
});
var MongoClient = mongodb.MongoClient;
var url = "mongodb://user:[email protected]:numbers/db";
MongoClient.connect(url, function (err, db) {
if (err) {
console.log('Unable to connect to the mongoDB server. Error:', err);
} else {
//HURRAY!! We are connected. :)
console.log('Connection established to database');
var collection = db.collection('accounts');
for(var i = 0; i < accounts.length; i++){
client.get('users/show', {screen_name: accounts[i]}, function(error, tweets, response){
if(error) console.log(error);
var account = {'screen_name': accounts[i], 'id': tweets.id};
collection.insert(account, {w:1}, function(err, result) {console.log(err);});
//collection.insert(account);
console.log(tweets.id); // Raw response object.
});
}
db.close();
}
});
Как вы можете видеть, программа устанавливает соединение с базой данных. Определяет коллекцию, а затем выполняет итерацию через несколько учетных записей twitter и записывает соответствующую информацию. Запросы twitter успешны, и mongodb работает с простыми запросами. Если у вас есть идеи о том, почему я получаю ответ, ответьте.