【问题标题】:Mathematical calculation using firebase function使用 firebase 函数进行数学计算
【发布时间】:2019-01-29 16:31:11
【问题描述】:

使用 firebase 函数计算加法、减法、乘法、除法和 mod 结果,并将未定义作为响应而不是计算值。

代码

const functions = require('firebase-functions');

exports.calculator = functions.https.onRequest((request, response) => {

console.log("request.body.result.parameters: ", 
request.body.result.parameters);
let params = request.body.result.parameters; 

var sum = parseFloat(params.number1 + params.number2);
var sub = parseFloat(params.number1 - params.number2);
var mul = parseFloat(params.number1 * params.number2);
var div = parseFloat(params.number1 / params.number2);
var mod = parseFloat(params.number1 % params.number2);

if (params.operator === "addition" ) {
    response.send({
            speech:
            `Here is your answer: ${sum}`             
});
}

else if (params.operator === "subtraction" ) {
            response.send({
                    speech:
                    `Here is your answer: ${sub}`            
        });
    }
else if (params.operator === "multiplication" ) {
           response.send({
                   speech:
                   `Here is your answer: ${mul}`            
        });
   }
else if (params.operator === "division" ) {
    response.send({
            speech:
            `Here is your answer: ${div}`            
        });
   }
else if (params.operator === "modulus" ) {
    response.send({
            speech:
            `Here is your answer: ${mod}`            
        });
   }
});

回应: 这是你的答案:未定义

【问题讨论】:

  • 仅供参考,我试过你的代码,它确实有效。根据您的代码,请求正文应为{ result: { parameters: { operator: 'multiplication', number1: 2, number2: 5 } } }

标签: firebase google-cloud-functions calculator calculation


【解决方案1】:

现在工作正常!

const functions = require('firebase-functions');
exports.calculatorbot = functions.https.onRequest((request, response) => {    
console.log("request.body.result.parameters: ", request.body.result.parameters);    
let params = request.body.result.parameters;
console.log("params: ", params)
var sum = Number(params.number1) + Number(params.number2);
var sub = Number(params.number1) - Number(params.number2);
var mul = Number(params.number1) * Number(params.number2);
var div = Number(params.number1) / Number(params.number2);
var mod = Number(params.number1) % Number(params.number2);
if (params.operator === "addition") {
    response.send({
        speech:
            `Here is your answer: ${sum}`
    });
}
else if (params.operator === "subtraction") {
    response.send({
        speech:
            `Here is your answer: ${sub}`
    });
}
else if (params.operator === "multiplication") {
    response.send({
        speech:
            `Here is your answer: ${mul}`
    });
}
else if (params.operator === "division") {
    response.send({
        speech:
            `Here is your answer: ${div}`
    });
}
else if (params.operator === "modulus") {
    response.send({
        speech:
            `Here is your answer: ${mod}`
    });
}
else {
    response.send({
        speech:
            `Invalid operator! I can perform addition, multiplication, division, 
modulus and subtraction till now.`
    });
}
});

【讨论】:

  • 您可以考虑将 cmets 添加到它现在的工作方式或原因,因为这对于寻找相同问题的任何人都可能有用。干杯!
猜你喜欢
  • 1970-01-01
  • 2012-05-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-06
  • 1970-01-01
  • 2021-10-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多