我有一個AngularJS服務稱爲sensorReadingsAPI
,其具有與get
下面的函數:如何通過AngularJS服務將變量發送到NodeJS控制器?
var _countSensorReadingsFilter = function() {
return $http.get(config.baseUrl + "/sensorReading/countFilter").then(function (data,status) {
sensorReadingCountFilter = data.data;
return Number(sensorReadingCountFilter);
}).catch(function() {});
};
的/countFilter
以的NodeJS控制器定義:
module.exports = {
countFilter: function (req, res) {
return res.sensorReadingCountFilter();
}
};
而且sensorReadingCountFilter
如下:
module.exports = function sensorReadingCountFilter(statusCode){
var req = this.req;
var res = this.res;
SensorReading.count({deviceNum:'MBA002'}).exec(function countCB(error, found) {
return res.view({val: found});
});
};
現在,計數是靜態的(寫入的地方是{deviceNum:'MBA002'}
)。我需要一種方法來使這個值變成動態的,使用一個變量,最好從AngularJS控制器發送。我有幾個設備,有可能增加更多的設備,並且不想爲每個設備創建/countFilter
模塊。
換句話說,一種將變量從AngularJS服務發送到NodeJS控制器的方法。當尋找這樣做的方法時,我幾乎找不到任何東西。
對於清除:所有這些將返回選定設備的讀數數量,並且config.baseUrl
是本地機器和端口。
我不會說 「也」。使用'params'是正確的做法。手動編寫URL通常最終會丟失'encodeURIComponent'調用。 – jcaron
我不知道有可能使用'?param'來使用url參數。這正是我需要的。 – Ernani
作爲一個方面說明,你知道是否讓服務器端(在這種情況下是NodeJS)處理數據庫請求的最佳實踐,還是我可以直接從AngularJS執行它們? – Ernani