我刚开始使用MEAN stack
而我将解析后的JSON
保存到Mongoose
时遇到问题。这是我的json解析函数:
function xmlToJson(url, callback) {
var req = http.get(url, function(res) {
var xml = '';
// Create the listener for data being returned
res.on('data', function(chunk) {
xml += chunk;
});
res.on('error', function(e) {
callback(e, null);
});
res.on('timeout', function(e) {
callback(e, null);
});
res.on('end', function() {
parseString(xml, function(err, result) {
callback(null, result);
});
});
});
}
然后我尝试将解析后的数据保存到Mongoose:
function saveToDB() {
xmlToJson(url, function(err, data) {
if (err) {
return console.err(err);
}
var json = JSON.stringify(data, null, 2);
// console.log(json);
});
db.collection('pools').insert(data, function(error, record) {
if (error) throw error;
console.log("data saved");
});
}
saveToDB();
我一直得到TypeError: undefined is not a function.
我知道这是因为数据是undefined
类型(我尝试记录typeof data
),但我不知道为什么它未定义,我不知道我不知道如何解决它。我已尝试使用JSON.parse(data)
,但它不起作用。
任何帮助将不胜感激!谢谢:))