mongodb中超出了最大调用堆栈大小

时间:2016-11-03 09:06:39

标签: javascript node.js mongodb express

我只是在调用一种方法。

通话方法

var message = "Hello"
     function1("78945612387", message, null, "Portalsms")

节点JS代码

 function function1(mobileno,body,logExtraInfo,messageType){
            request(uri, function (error, response, body) {
                if (response) {
                    db.collection.insertOne(getObjectToSave(uri, mobileno, msg, logExtraInfo, messageType, error, response), function (err, result) {
                        if (err) {
                                 console.log(err);
                            //  res.status(400).send(err);
                            return;
                        }
                        console.log(result);
                    });
                }
    }


function getObjectToSave(uri, mobileno, msg, logExtraInfo, messageType, error, response) {


        return {
            "uri" : uri,
            "mobileNo" : mobileno,
            "message" : msg,
            "logExtraInfo" : logExtraInfo,
            "messageType"  : messageType,
            "error"    : error,
            "response" : response,
            "creationDate": new Date()    
        }

}

我不知道为什么它会给我这个错误。

(超出最大调用堆栈大小)

我没有递归地调用这个函数。

我的请求调用是发送短信,在响应后我只想将结果存储在我的mongodb文档“smsLog”中。

我在这里没有使用任何承诺,因为我希望这种方法能够异步运行。

提前完成

1 个答案:

答案 0 :(得分:0)

问题可以通过以下方式解决:

  1. 不要使用插入的架构实例
  2. 使用普通的旧JSON对象
  3. 另见StackOverflow Q/A