公司项目需要访问jira平台,需要对传输数据进行转码,否则乱码导致查询出错。
一、前端代码
//获取系统和相应系统的领域负责人
function getSystem(){
$.ajax({
url : '${pageContext.request.contextPath}/IT00015Controller/doGet.action',
type : 'get',
async : false,
data : {
url: 'http://***.***.com/rest/insight/1.0/iql/objects?objectSchemaId=21&iql=objectTypeId=266'
},
dataType : 'json',
success : function (result) {
systemManager = result;
}
});
}
这里将"服务名称"中文字符转换成了
%E7%B3%BB%E7%BB%9F%E5%B7%A5%E5%85%B7
二、Controller层
@RequestMapping("/doGet")
@ResponseBody
public List<Map<String,Object>> doGet(String url) {
Session session = SecurityUtils.getSubject().getSession();
try {
String objectType = URLEncoder.encode("服务名称", "UTF-8");
URL urlStr = new URL(url + objectType + "&resultPerPage=500");
List<Map<String, Object>> result = it00015Service.doGet(urlStr,"s-servicedesk:BenDan11");
return result;
} catch (IOException e) {
</

该博客主要介绍了在公司项目中访问Jira平台时遇到的中文字符乱码问题及其解决方案。前端通过URL编码将中文字符转换为%E7%B3%BB%E7%BB%9F%E5%B7%A5%E5%85%B7,然后在Controller层使用URLEncoder.encode进行转码。在Service层,通过HttpURLConnection进行请求并设置相应头来确保数据传输的正确性,从而成功避免了乱码导致的查询错误。
最低0.47元/天 解锁文章
8406

被折叠的 条评论
为什么被折叠?



