JSON文件出现Unexpected end of string警告的原因及解决方法
JSON中PublicPem字段出现"Unexpected end of string"错误的原因及修复方法
错误原因
- PEM格式证书包含换行符、连字符等特殊字符,直接复制到JSON字符串字段时,JSON解析器无法识别未转义的换行符,会判定字符串提前结束,触发"Unexpected end of string"警告。
- JSON语法要求字符串内的特殊字符必须转义,未处理的换行符会破坏JSON结构,导致解析失败。
修复方法
方法1:手动转义特殊字符
将PEM内容里的所有换行符替换为\n,同时确保整个内容被双引号包裹。示例:
原始PEM内容:
-----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA... ... -----END PUBLIC KEY-----
转义后写入JSON:
"PublicPem": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA...\n...\n-----END PUBLIC KEY-----"
方法2:用工具自动转义
借助本地JSON转义工具(避免使用在线工具泄露敏感证书内容),将PEM内容粘贴后自动生成转义后的字符串,再复制到JSON字段中。
方法3:使用非标准多行字符串(不推荐)
部分JSON解析器支持反引号包裹的多行字符串,但这不属于标准JSON语法,兼容性差,仅适合测试场景:
"PublicPem": `-----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA... ... -----END PUBLIC KEY-----`
内容的提问来源于stack exchange,提问作者nam
相关产品推荐
相关产品推荐

