方法是使用API​​调用给出错误

时间:2018-03-13 17:18:45

标签: node.js rest

我正在为alexa编写节点js函数,并且必须进行API调用。如果这是一个纯文本,我会得到响应,否则它会给我如下错误。

feedback is not a function\nStacktrace:\n====================\nTypeError: feedback is not a function\n

这是我的代码。

var apiServices = require('./apiServices.js');
feedback();
    var feedback = () => {
        if (!session.attributes.pin) {
            response.speechText = "Absolutely, I can help with that. What is the PIN Number??";
            response.repromptText = "What is the PIN Number??";
            response.shouldEndSession = false;
            response.done();
        } else {

            apiServices.getCaseStatus("status", function(data) {
                if (data) {
                    console.log(data.length);
                    response.speechText = `you have total ${data.length} pending cases`;
                    response.repromptText = " Is there anything else that I can Help you with?";
                    response.shouldEndSession = false;
                    session.attributes.shouldLoop = true;
                    response.done();
                }
            });
        }
    }

这里不是在else中进行API调用,如果我使用下面的文字。

else {
     response.speechText = `you have total ${data.length} pending cases`;
      response.repromptText = " Is there anything else that I can Help you with?";
     response.shouldEndSession = false;
     session.attributes.shouldLoop = true;
     response.done();
     }

工作正常。请让我知道我哪里出错了,我该怎么办呢。

由于

1 个答案:

答案 0 :(得分:1)

我打算冒险猜测在同一个文件中你有一个名为feedback的东西在别处定义。正在使用该定义而不是函数。要解决此问题,请交换订单,以便在定义后调用函数。调整变量名称可能也是一个好主意,因此您不会对不相关的事物使用相同的名称。