我对salesforce非常陌生,并尝试创建一个SOAP客户端,该客户端将连接并从salesforce获取特定潜在客户的详细信息。
我正在消费伙伴wsdl。
截至目前,我可以使用合作伙伴wsdl创建客户端。
我已设置this
中给出的会话标头但是,当我尝试获取某些信息时,它会给出与会话标题相关的错误
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sf="urn:fault.partner.soap.sforce.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<soapenv:Fault>
<faultcode>sf:INVALID_SESSION_ID</faultcode>
<faultstring>INVALID_SESSION_ID: Invalid Session ID found in SessionHeader: Illegal Session</faultstring>
<detail>
<sf:UnexpectedErrorFault xsi:type="sf:UnexpectedErrorFault">
<sf:exceptionCode>INVALID_SESSION_ID</sf:exceptionCode>
<sf:exceptionMessage>Invalid Session ID found in SessionHeader: Illegal Session</sf:exceptionMessage>
</sf:UnexpectedErrorFault>
</detail>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
我正在设置像这样的会话标题
var sheader = {
SessionHeader : {
sessionId: result.result.sessionId
}
};
client.addSoapHeader(sheader);
我正在使用soap节点模块来创建SOAP客户端,该客户端将会话标头设置为this。
现在我的问题是从哪里可以获得这三个可选信息,即
考虑到我是SOAP和Salesforce的新手,任何指导都会有所帮助。
答案 0 :(得分:4)
替换此client.addSoapHeader(sheader,"","tns","");
与
client.addSoapHeader(sheader,"","tns","urn:partner.soap.sforce.com");