gpt4 book ai didi

node.js - 如何使用soap和nodejs向chronopost发出运输请求

转载 作者:太空宇宙 更新时间:2023-11-04 01:46:42 30 4
gpt4 key购买 nike

我在使用 node-soap 和 chronopost(运输平台)soap api 发出简单请求时遇到了困难。

我做的第一件事是遵循基本的 Node SOAP 示例,但它只是惨败而没有来自 chronopost 的任何真正有用的错误。

这是我所拥有的:

const soap = require('soap')

const client = await soap.createClientAsync(
'https://ws.chronopost.fr/shipping-cxf/ShippingServiceWS?wsdl'
)

client.shippingV6(...somedata, (err, result) => {
if (err) {
return handleErr(); // it always fails
}
handleResult();
})

最佳答案

经过多次尝试,似乎 chronopost api 使用特殊的根属性(谁知道为什么),您需要在 Node SOAP 上制作真正适合其需求的选项(是的..)

这对我有用

const createClientShippingServiceWS = async () => {
const wsdlOptions = {
envelopeKey: 'soapenv',
overrideRootElement: {
namespace: 'cxf',
xmlnsAttributes: [
{
name: 'xmlns:cxf',
value: 'http://cxf.shipping.soap.chronopost.fr/'
}
]
}
}

return await soap.createClientAsync(
'https://ws.chronopost.fr/shipping-cxf/ShippingServiceWS?wsdl',
wsdlOptions
)
}

如果node-soap无法计算出如何做出响应,那么获取wsdl还有什么意义?

感谢 chronopost 在 2008 年陷入困境

关于node.js - 如何使用soap和nodejs向chronopost发出运输请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51190866/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com