java对接顺丰接口查询物流
前提
丰桥是没有客服的,旁边的客服和群都是摆设,“同性交友会”罢了
准备
注册丰桥账号,申请开发者权限,这个的话是秒过,然后去申请接口
申请之后,如果没有月结卡号是没办法通过接口审核需要手动去丰桥提问向客服反馈,如果只是路由查询的话,其他接口还是需要月结卡号,接口接入正式环境的审核还需要先在沙箱测试3次并成功,那个随便点2下就行。如果前面成功了,就会如下图
附,丰桥提问即我的要提问
代码部分
官方demo
http://qiao.sf-express.com/pages/helpCenter/download.html
值得一提的是,必须按照他的类型写 不然会有问题,后续补充问题
我写的如下,还需要官方提供的jar
final String CLIENT_CODE = "o"; //此处替换为您在丰桥平台获取的顾客编码
final String CHECK_WORD = "o";//此处替换为您在丰桥平台获取的校验码
EspServiceCode testService = EspServiceCode.EXP_RECE_SEARCH_ROUTES;//查路由
final String CALL_URL_PROD = "https://sfapi.sf-express.com/std/service";
CallExpressServiceTools client=CallExpressServiceTools.getInstance();
Map<String, String> params = new HashMap<String, String>();
String timeStamp = String.valueOf(System.currentTimeMillis());
String msgData ="{\"trackingNumber\":[\"SF"+id+"\"],\"checkPhoneNo\":\""+phone+"\"}";//无月结卡号通过运单和手机后4位即可
params.put("partnerID", CLIENT_CODE); // 顾客编码 ,对应丰桥上获取的clientCode
params.put("requestID", UUID.randomUUID().toString().replace("-", ""));
params.put("serviceCode",testService.getCode());// 接口服务码
params.put("timestamp", timeStamp);
params.put("msgData", msgData);
params.put("msgDigest", client.getMsgDigest(msgData,timeStamp,CHECK_WORD));
long startTime = System.currentTimeMillis();
System.out.println("====调用请求:" + params.get("msgData"));
String result = HttpClientUtil.post(CALL_URL_PROD, params);
System.out.println("====调用丰桥的接口服务代码:" + String.valueOf(testService.getCode()) + " 接口耗时:"+ String.valueOf(System.currentTimeMillis()-startTime)+"====");
System.out.println("===调用地址 ==="+CALL_URL_PROD);
System.out.println("===顾客编码 ==="+CLIENT_CODE);
System.out.println("