我正在使用soap文件来执行简单的数学计算,但是当我要使用控制器中的结果以JSON格式打印时,我的函数返回一个 “承诺 {}” 就在这里,我将离开我的函数和控制器
const CalcSum = require('../sum');
const calcSum = new CalcSum();
class CalculatorController{
adder (req,res){
const{
value1,
value2,
}= req.body;
const result = calcSum.sum(value1,value2);
console.log(result);
return res.status(200).json({
Response: result
})
}
}
module.exports = CalculatorController;
//end class CalculatorController;
// consolo.log(result) returns Promise {<pending>} in the terminal
//the first class is my controller, next is my function
const soap = require("soap");
const wsdl = "http://www.dneonline.com/calculator.asmx?wsdl";
class CalcSum{
async sum(value1, value2) {
const soapClient = await soap.createClientAsync(wsdl);
await soapClient.Add({ intA: value1, intB: value2 }, (err, result) => {
then(function(result) {
console.log(result);
return result.AddResult;
})
.then(function(result) {
console.log(result);
});
})
}
}
module.exports = CalcSum;
//end class/function CalcSum
答案 0 :(得分:0)
const CalcSum = require('../sum');
const calcSum = new CalcSum();
class CalculatorController{
adder (req, res){
const result = calcSum.sum(req,res);
}
}
module.exports = CalculatorController;
//this is my controller, now i'm passing the request and the answer to the method
const soap = require("soap");
const wsdl = "http://www.dneonline.com/calculator.asmx?wsdl";
class CalcSum {
async sum(req, res) {
const {
value1,
value2
} = req.body;
const soapClient = await soap.createClientAsync(wsdl);
await soapClient.Add({ intA: value1, intB: value2 }, (err, result) => {
if (err) {
console.log(err);
}
return res.status(200).json({
Response: result.AddResult
})
})
}
}
module.exports = CalcSum;
//this is my sum class, i am sending the sum result in a JSON