问题描述
我是网站开发的新手。我正在使用已安装SOAP npm的Firebase Cloud Functions,将SOAP请求发送到邮件服务提供商。
这是我在Firebase Cloud Functions中的原始代码:
exports.testing = functions.https.onRequest(async (request,response) =>{
try {
const fs = require('fs');
const soap = require('soap');
response.set('Access-Control-Allow-Origin','*');
response.set('Access-Control-Allow-Credentials','true');
const securityOptions = {
hasNonce: true,passwordType:'PasswordDigest',hasTokenCreated:true,hasTimeStamp:false,mustUnderstand:1
};
const wsSecurity = new soap.WSSecurity('username','password',securityOptions);
const bearerSecurity = new soap.BearerSecurity('token');
const httpOptions = {
envelopeKey: 'soap'
};// end of httpOptions
const url = 'https://www.serviceproviderwebsite.com/API/services/Calculator?wsdl'; // Production
const args = {
api01Req:{
'userName':userName,'countryCode': areaCode,'shipCode': shipCode,'mailType': mailType,'weight': totalWeight,}
};// end of args
soap.createClient(url,httpOptions,function(err,client) {
console.log("in createClient 1,err = "+err);
client.setSecurity(bearerSecurity);
client.setSecurity(wsSecurity);
console.log("in createClient 2,err = "+err);
client.getTotalPostage(args,result) {
console.log("in getTotalPostage,err = "+err);
console.log("in getTotalPostage,result = "+JSON.stringify(result));
let valueUSD = parseFloat(result.getTotalPostageReturn.totalPostage)/usdValue;
let ualueUSDRounded = math.round(valueUSD,2);
result.getTotalPostageReturn['totalPostageUSD'] = ualueUSDRounded;
response.status(200).send(result);
}); // end of client.getTotalPostage
}); // end of soap.createClient
} // end of try
catch (error) {
console.log(error)
response.status(500).send(error)
} // end of catch
}); // end of exports.testing
最近我在console.log(“在createClient 1中收到错误,如下所示:err =” + err):
然后,我意识到我被要求向信任库中添加.jks文件,我已经在SOAP npm菜单[https://www.npmjs.com/package/soap#security][1]中呆了几天,失败。
我已将.jks文件成功上传到Firebase Cloud Functions中的文件夹。下面是结构:
-/public/
-/functions/
- index.js
- package.json
- package-lock.json
-/node_modules/
-/certs/
- cert.jks
有人能帮助我解决这个问题吗?非常感谢你。 [1]:https://www.npmjs.com/package/soap#security
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)