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

使用DocuSign eSignature REST API v2.1 Java时非英文HTML文档显示异常求助

解决DocuSign eSignature REST API v2.1中HTML文档非英文内容显示异常的问题

问题原因

你当前的代码直接将Java字符串转成Base64时,默认使用JVM平台编码(多为ISO-8859-1),这种编码无法正确处理UTF-8格式的非英文字符,导致DocuSign解析时出现乱码。

修复步骤

  1. 明确指定UTF-8编码转换字节数组
    在将HTML字符串转Base64时,显式使用UTF-8编码生成字节数组,确保非英文字符被正确编码。
  2. 在HTML文档中声明UTF-8编码
    在HTML头部添加<meta charset="UTF-8">,告诉DocuSign的解析器使用UTF-8解码文档内容。

修改后的代码示例

import java.nio.charset.StandardCharsets;
import java.util.Base64;
import java.util.Arrays;

// ... 其他业务代码

String htmlDoc = "<!DOCTYPE html><html><head><meta charset=\"UTF-8\"></head><body><p>Signera arbetsorderavtal för anställningsnummer</p></body></html>";
Document document = new Document();
document.setDocumentId("1");
document.setName("name");
// 关键修改:用UTF-8编码转字节数组后再做Base64编码
document.setDocumentBase64(Base64.getEncoder().encodeToString(htmlDoc.getBytes(StandardCharsets.UTF_8)));
document.setFileExtension("html");
envelopeDefinition.setDocuments(Arrays.asList(document));

补充说明

  • 显式指定StandardCharsets.UTF_8可以避免依赖JVM默认编码的不确定性,保证跨环境的一致性。
  • HTML头部的<meta charset="UTF-8">是DocuSign正确识别非英文字符的必要声明,两者配合即可彻底解决显示异常问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 09:30:58