欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

Java使用阿里云全球物流快递查询(单号识别)乱码问题

时间:2023-07-01
Java使用阿里云全球物流快递查询(单号识别)乱码问题

使用阿里云全球物流快递查询(单号识别)的时候,在本地测试好好的,但是部署到服务器后遇到了中文符号乱码问题,如 】会乱码
官方接口文档地址

给他修改一下

public static JSONObject getExpInfo(String no, String appcode) { if (LInc.isBlank(no)) { throw new RuntimeException("快递单号不能为空"); } if (LInc.isBlank(appcode)) { throw new RuntimeException("参数尚未配置"); } JSONObject result = null; try { HttpClient htClient = HttpClientBuilder.create().build(); HttpGet method = new HttpGet("https://goexpress.market.alicloudapi.com/goexpress?no=" + no + "&type="); method.setHeader("Authorization", "APPCODE " + appcode); HttpResponse response = htClient.execute(method); String resData = EntityUtils.toString(response.getEntity()); int statusCode = response.getStatusLine().getStatusCode(); if (statusCode != 200) { Header[] headers = response.getHeaders("X-Ca-Error-Message"); if(headers.length>0){ String error = headers[0].getValue(); if (statusCode == 400 && "Invalid AppCode `not exists`".equals(error)) { throw new RuntimeException("AppCode错误"); } else if (statusCode == 400 && "Invalid Url".equals(error)) { throw new RuntimeException("请求的 Method、Path 或者环境错误"); } else if (statusCode == 400 && "Invalid Param Location".equals(error)) { throw new RuntimeException("参数错误"); } else if (statusCode == 403 && "Unauthorized".equals(error)) { throw new RuntimeException("服务未被授权(或URL和Path不正确)"); } else if (statusCode == 403 && "Quota Exhausted".equals(error)) { throw new RuntimeException("套餐包次数用完"); } else { throw new RuntimeException("参数名错误 或 其他错误" + error); } } throw new RuntimeException("响应参数有误"); } result = JSON.parseObject(resData); } catch (Exception e) { throw new RuntimeException("获取失败:" + e.getMessage()); } return result; }

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。