为了账号安全,请及时绑定邮箱和手机立即绑定

EnvelopeRecipients::update 中的 INVALID_REQUEST_BODY

EnvelopeRecipients::update 中的 INVALID_REQUEST_BODY

PHP
FFIVE 2021-06-29 16:42:22
我使用 GETenvelopes/{envelope_id}/recipients端点获取信封收件人。之后,我添加该字段clientUserId并尝试更新信封,使用 POST 信封/{envelope_id}/recipients 端点和我从 GET 方法返回的数组作为主体。但返回以下错误:“请求正文丢失或格式不正确。无法将当前 JSON 数组(例如 [1,2,3])反序列化为类型 'API_REST.Models.v2.recipientIdentityVerification',因为该类型需要 JSON 对象(例如 {"name" :"value"}) 正确反序列化。要修复此错误,请将 JSON 更改为 JSON 对象(例如 {"name":"value"})或将反序列化类型更改为数组或实现集合接口的类型(例如 ICollection、IList),例如可以从 JSON 数组反序列化。JsonArrayAttribute 也可以添加到类型以强制它从 JSON 数组反序列化。路径 'signers[0].identityVerification',第 1 行,位置 120。”Obs:这是我上次测试时有效(2018 年 12 月)更新:我启用了日志,但似乎没有记录错误,如您所见,日志中的所有请求都“正常”,并且我没有找到 POST 信封/{envelope_id}/recipients。以下是日志文件:
查看完整描述

2 回答

?
繁星点点滴滴

TA贡献1803条经验 获得超3个赞

最后我找出了导致问题的原因:

显然,从 GETenvelopes/{envelope_id}/recipients返回的 JSON将字段“identityVerification”作为数组返回。但是 POST 仅在“identityVerification”是一个对象时才有效。

//img1.sycdn.imooc.com//60decac500019b7013910185.jpg

为了解决这个问题,我在进行 POST 调用之前执行了以下操作:

$recipients['signers'][$i]['identityVerification'] = new stdClass();


查看完整回答
反对 回复 2021-07-02
?
摇曳的蔷薇

TA贡献1793条经验 获得超6个赞

由于您没有在 DocuSign 日志中看到错误,而且从错误的措辞来看,我怀疑问题发生在您的机器内,然后再将请求发送到 DocuSign。

因此,解决方案是在您的应用程序中进行调试。如需更多帮助,请提供导致错误出现的代码。


查看完整回答
反对 回复 2021-07-02
  • 2 回答
  • 0 关注
  • 169 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信