Tôi đã giao tiếp với twitter bằng cách sử dụng nodejs. Tôi đang cố gắng để đăng nhập một số dữ liệu người dùng công cộng quan trọng trong một cơ sở dữ liệu mongodab mongodb. Đối với một số lý do tôi tiếp tục nhận được một lỗi "topology bị phá hủy" Tôi không khá chắc chắn lý do tại sao điều này.Cấu trúc liên kết nút Mongolab nodejs bị phá hủy
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();
}
});
Như bạn có thể thấy chương trình thiết lập kết nối với cơ sở dữ liệu. Xác định bộ sưu tập và sau đó lặp lại thông qua một số tài khoản twitter và nhật ký thông tin thích hợp. Các yêu cầu twitter thành công và mongodb hoạt động với các yêu cầu đơn giản. Nếu bạn có bất kỳ ý tưởng về lý do tại sao tôi nhận được phản hồi này, vui lòng trả lời.
Câu đầu tiên của bạn là gợi ý tôi cần để truy tìm mã của mình để sửa lỗi. Tôi đã theo nghĩa đen đóng kết nối Mongoose _before_ một cuộc gọi lại đã thực hiện chèn số lượng lớn có cơ hội để hoàn thành nhiệm vụ của mình. Cảm ơn! – Saheed