我的开发日记(十二)
这两天继续联调,做一些细节的修改,总体来讲问题不大。总结如下:踩了一个坑,学到了数据库回滚。 坑:又是字符编码 这个项目有一个中间层服务,前端的请求在中间层会被处理一下,然后转发到我的 Java 服务。中间层主要是校验用户登录状态和处理用户登录信息。结果发现中间层在处理参数的时候,默认都都转成了 Unicode 编码格式的字符串了。这个说法可能用词有些不当,就是前段传的参数是 测试 ,我收到的参数是 \u6d4b\u8bd5 ,而且是 utf-8 编码格式的字符串。我有点迷,找了半天问题,虽然不知道为啥这么做,但是数据库里面确实正常的。中间层服务是 Python 的,大概是 Python 语言的习惯吧。 我收到的参数: 跳过中间层,从前端直接发请求到我的服务上时参数如下: 上网抄了一个解决方案: /** * 处理Unicode码转成utf-8 * * @param str * @return */ public static String unicodeToString(String str) { Pattern pattern = Pattern.compile("(\\\\u(\\p{XDigit}{4}))"); Matcher matcher = pattern.matcher(str); char ch; while (matcher.find()) { String