【问题标题】:DocuSign SOAP based API call error handling基于 DocuSign SOAP 的 API 调用错误处理
【发布时间】:2013-12-19 05:16:42
【问题描述】:

我正在使用基于 SOAP 的 API 调用来创建 DocuSign 信封。 我可以创建一个信封,但如果收件人或其他东西缺少标签,我无法从 API 调用中检索正确的错误消息。 这是我的代码。

Dim client As New DocuSignServ.DSAPIServiceSoapClient
                Using scope As System.ServiceModel.OperationContextScope = New System.ServiceModel.OperationContextScope(client.InnerChannel)
                    SetHttpHeader()
                    Try
                        status = client.CreateAndSendEnvelope(newennvelope)
                        Session("status") = status
                        env.ID = status.EnvelopeID
                        envelopeid = env.ID
                    Catch ex2 As System.ServiceModel.FaultException
                        errormsg = "Error occured while creating an envelope into DocuSign account<br>Error Details : " & ex2.InnerException.Message.ToString
                    Catch ex As Exception

                        errormsg = "Error occured while creating an envelope into DocuSign account<br>Error Details : " & ex.Message.ToString
                    End Try
                End Using

请指教,

谢谢

【问题讨论】:

  • 请澄清您所说的“如果缺少标签”是什么意思。我不明白您要解决什么问题或工作流程...
  • 我的意思是,如果在创建信封时发生错误,如何获取带有状态码的错误详细信息?目前,每当创建信封时发生错误,我都会从 DocuSign 收到一般错误消息“无效的用户名或密码”。我想获取错误消息的详细信息,以便更正错误。

标签: docusignapi


【解决方案1】:

如果您查看 DocuSign SOAP 服务的 WSDL,您会发现有一个错误元素指定了 ErrorCodeMessage

<s:complexType name="ErrorDetails">
<s:sequence>
    <s:element minOccurs="0" maxOccurs="1" name="ErrorCode" type="s:string"/>
    <s:element minOccurs="0" maxOccurs="1" name="Message" type="s:string"/>
</s:sequence>
</s:complexType>

您只需解析该 XML 即可检索错误代码和描述。

DocuSign WSDL

【讨论】:

  • 我之前也检查过 WSDL,但找不到从我用来创建信封的 API 调用中引用错误元素的方法。我正在使用“CreateandSendEnvelope”方法创建一个信封,该信封返回“DocuSignEnvelopeStatus”,我无法从中引用错误元素。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-21
  • 1970-01-01
  • 2023-03-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多