簡體   English   中英

函數正在獲取未定義的參數Node.js

[英]Function is getting undefined parameter Node.js

我正在使用將Mongo用作DB和node.js的應用程序。 我創建了一個函數,該函數旨在接收名為orderedBy的參數,但我的console.log打印了未定義的參數。 為什么會這樣呢? 這是代碼。

exports.showAll = function(orderedBy, callback){

var query = {orderedBy: orderedBy}
console.log("Orderer by ===== "+ orderedBy);

var array = models.Orden.find(query).lean().exec(function(err, orders) {
    if( orders.length > 0) {
        callback({'array' : orders});
        //callback({'array' : JSON.stringify(orders)});
    }
    else {
        callback({'error' : "You don't have any orders"});
    }
});}

這里我叫showAll

app.post('/api/showAll', function(req, res) {
      var orderedBy = req.body.orderedBy;
      ordenes.showAll(orderedBy, function(found){
           console.log(found);
           res.json(found);
      });
 });

基本上,我想要的是獲取一個ID並顯示該人有多少訂單。 但是我的回答總是“您沒有任何訂單”,主要是因為我的控制台日志顯示,orderedBy是未定義的。

是的,我確保我發送的是正確的ID,並用Postman模擬

您的req請求對象都要求兩個屬性

  • 正文:當您發送POST / PUT請求時,請求的正文將被填充
  • 查詢:當您發送請求時(無論方法如何)都將由queryString填充。 例如http:// localhost:3000?orderBy = AAAA

    在您的服務器端,您可以req.orderBy === 'AAAA'

以為是我的功能錯了,但是那是我的參數。 我愚蠢地發送了表單數據,而不是用郵遞員發送x-www-form-urlencoded。 從來沒有壞過,謝謝。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM