You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用eSignLive Rest API添加字段报错:Failed to deserialize json string to target

问题解决:给eSignLive包添加字段的API修正方案

错误原因分析

你遇到的"Invalid JSON"和反序列化失败错误,核心问题有两个:

  1. 把请求体(字段的JSON数据)错误放在了-H(请求头)参数里,-H是用来定义HTTP请求头的,不能用来传递业务数据
  2. 缺少Content-Type: application/json请求头,服务器无法识别你发送的数据格式

修正后的curl命令

curl -X 'POST' \
'https://sandbox.esignlive.com/api/packages/WlnHZN0WH1xKX6GHGTFbQtGPBJg=/documents/cec7f9fa480589d46a91944ca2b4e8921df2aaef094ae042/approvals/MfSNKUFMhHIB/fields' \
  -H 'accept: application/json' \
  -H 'Authorization: Basic 你的Base64编码API密钥' \
  -H 'Content-Type: application/json' \
  -d '{ 
    "id": "date_field", 
    "name": "date_field", 
    "type": "INPUT",  
    "subtype": "LABEL", 
    "value": "2023-01-01", 
    "page": 0, 
    "width": 269.9928097345133, 
    "height": 59.986172566371685,  
    "top": 694.5371497050148, 
    "left": 275.8079830383481 
  }'

关键修正点说明

  • 添加Content-Type: application/json请求头:明确告诉服务器请求体是JSON格式
  • 将原JSON内容从-H移到-d参数后:-d是curl用来传递POST请求体的参数
  • 修正Authorization头:Basic认证需要把你的API密钥加上冒号(api_key:)后做Base64编码,替换命令里的你的Base64编码API密钥

新手Rest API使用建议

  • 分清请求头和请求体:请求头(-H)用来传递认证、数据类型这类元数据;请求体(-d)用来传递业务数据(比如字段信息)
  • 必设Content-Type:发送JSON时必须设置Content-Type: application/json,否则服务器会解析失败
  • 校验JSON格式:写JSON时要注意引号闭合、逗号分隔,不确定的话可以用JSON校验工具检查
  • Postman使用技巧:在Postman里测试时,选POST方法后切换到Body标签,选raw并设置格式为JSON,粘贴JSON内容;在Headers标签里添加Authorization和Content-Type,比直接复制curl更直观不易错
  • 优先查官方文档:eSignLive的官方API文档会明确每个接口的参数要求、请求格式,遇到问题先对照文档核对

内容的提问来源于stack exchange,提问作者user112a2

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 13:53:12