webservice传递特殊字符时被自动转义该怎么解决?

问题描述

webService在传递包含<,>,',"等特殊字符时,被框架自动转义为<等字符,导致前端无法解析,前端也无法对转义后的结果再次处理

问题出现的环境背景及自己尝试过哪些方法

网上查说用<![CDATA[进行标注来解决,但不知是我的使用方法不对还是不适用,没有解决,
程序逻辑是在mapper文件中用sql查询数据库中的String类型内容,然后返回出去,在sql查询的mapper中加<![CDATA[并没有用,我尝试只单独传一个<,也是自动转义了,而且还没法用<的方式防止自动转义

你期待的结果是什么?实际看到的错误信息又是什么?

求问有什么方法能规避这种包含特殊字符的传递时自动转义问题么,在不使用base64转码的情况下?

阅读 8k
1 个回答

你说的是转义成&lt;然后直接用innerHTML没法写到网页上吧?用正则替换一次就可以了

doc.replace(/&lt;/g,"<");
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题