我有一個nodejs
應用程序使用express
和mongoose
。前端是一個AngularJS
應用程序。 在我的本地機器上運行express
路由從MongoDB
給出正確的結果,但在生產環境中我得到一個空的結果([]
)。Mongoose回調在生產環境中返回空,但是非空本地
的User
模式的定義如下:
var mongoose = require('mongoose');
module.exports = mongoose.model('Users', {
Username : String,
Password : String,
UniqueID : String,
Coordinates : Array
}, 'Users');
的express
航線它得到這些結果是:
app.get('/coordinates/:userId', function (req, res) {
User.findOne({UniqueID: req.params.userId}, function (err, user) {
if (err) res.send(err);
else {
res.send(user.Coordinates);
}
});
});
在我的本地機器,我得到迴應:[{x: 0, y: 0}, {x: 25, y: 25}]
,但在服務器上我得到[]
。
的路由被稱爲具有以下AngularJS
片段:
$http.get('/coordinates/<userId>').then(function (response) {
$scope.coordinates = !_.isEmpty(response.data) ? response.data : [];
}, function (response) {
});
我不知道這個問題可能是什麼。
服務器使用的是比我本地env更老的mongodb,所以我改變了這一點,現在我得到一個空的響應本地以及...它看起來像數組沒有取 – mmjmanders
你更新哪mongo?你是否降級當地的mongo或升級產品mongo? – Srijith
降級本地。看起來好像Array類型根本沒有被獲取。 – mmjmanders