Я запрашиваю Twitter для местоположений, которые успешно возвращены. Эти местоположения затем хранятся в mongodb. Когда я запрашиваю базу данных через командную строку для местоположения: «Соединенное Королевство», данные о местоположении возвращаются. Однако, когда я запрашиваю базу данных на сервере NodeJS, ничего не возвращается (null).Запрос Mongoose на сервере NodeJS возвращает NULL
Вот код:
'use strict';
// Set default node environment to development
process.env.NODE_ENV = process.env.NODE_ENV || 'development';
var express = require('express');
var mongoose = require('mongoose');
var config = require('./config/environment');
var Location = require('./api/twitter/location/twitter/location.model');
// Connect to database
mongoose.connect(config.mongo.uri, config.mongo.options);
mongoose.connection.on('error', function(err) {
console.error('MongoDB connection error: ' + err);
process.exit(-1);
});
// Populate DB with sample data
if(config.seedDB) {
Location.remove({}, function(err) {
console.log('Location collection removed');
});
}
// Setup server
var app = express();
var server = require('http').createServer(app);
var socketio = require('socket.io')(server, {
serveClient: config.env !== 'production',
path: '/socket.io-client'
});
require('./config/socketio')(socketio);
require('./config/express')(app);
require('./routes')(app);
// Start server
server.listen(config.port, config.ip, function() {
console.log('Express server listening on %d, in %s mode', config.port, app.get('env'));
});
// Expose app
exports = module.exports = app;
// Query Twitter for locations
getLocations();
// Find location 'United Kingdom'
var woeId = Location.findOne({'name': 'United Kingdom'}, 'woeId', function (err, location) {
console.log(location);
if (!err) {
return location;
} else {
console.log(err);
}
});
// Gather available locations from Twitter
function getLocations() {
twitterClient.get('trends/available', {}, function(errors, locations, response) {
if (!errors) {
storeLocations(locations);
} else {
console.log(errors);
}
});
}
// Store locations in database
function storeLocations(locations) {
for (var location in locations) {
Location.create({
name: locations[location].name,
placeType: {
code: locations[location].placeType.code,
name: locations[location].placeType.name
},
parentId: locations[location].parentid,
country: locations[location].country,
woeId: locations[location].woeid,
countryCode: locations[location].countryCode
}, function(err) {
if (err) {
console.log(err);
}
});
}
}
Любая помощь с этим была бы оценена и спасибо заранее.