JAVA接入顺丰快递
生活随笔
收集整理的這篇文章主要介紹了
JAVA接入顺丰快递
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
豐橋地址
下載到項目中后放到lib文件夾下,引入:
<dependency><groupId>sf.sdk</groupId><artifactId>sf</artifactId><version>1.0</version><scope>system</scope><systemPath>${project.basedir}/src/main/resources/lib/SF-CSIM-EXPRESS-SDK-V1.6.jar</systemPath></dependency>需要從豐橋獲取的參數:
@Value("${sf.clientCode}")private String clientCode; //商戶號@Value("${sf.checkword}")private String checkword; //驗證碼@Value("${sf.custid}")private String custid; //月付id 我這里使用的是寄付月結順豐使用xml做數據交互,這里貼一些簡單的轉換工具類
具體的字段含義查看順豐的文檔
快速下單轉換xml方法:
訂單查詢接口是在下單后沒有返回運單號時主動查詢運單號使用的,這里我一開始理解為查詢物流信息的接口了 ̄□ ̄||
/*** 獲取順豐訂單結果查詢接口xml** @param params* @return*/public static String getOrderSearchServiceRequestXml(Map<String, String> params) {String orderNo = params.get("orderNo");StringBuilder strBuilder = new StringBuilder();strBuilder.append("<Request service='OrderSearchService' lang='zh-CN'>");strBuilder.append("<Head>" + params.get("clientCode") + "</Head>");strBuilder.append("<Body>");strBuilder.append("<OrderSearch").append(" ");strBuilder.append("orderid='" + orderNo + "'").append(" /> ");strBuilder.append("</Body>");strBuilder.append("</Request>");return strBuilder.toString();}除了下單接口參數略多一下,其他接口大致相同
查詢物流信息接口
取消訂單接口
/*** 取消訂單** @param params* @return*/public static String getConfirmRequestXml(Map<String, String> params) {StringBuilder strBuilder = new StringBuilder();strBuilder.append("<Request service='OrderConfirmService' lang='zh-CN'>");strBuilder.append("<Head>").append(params.get("clientCode")).append("</Head>");strBuilder.append("<Body>");strBuilder.append("<OrderConfirm").append(" ");strBuilder.append("orderid='").append("orderNo").append("' ");strBuilder.append("dealtype='2'>").append(" ");strBuilder.append("</OrderConfirm>");strBuilder.append("</Body>");strBuilder.append("</Request>");return strBuilder.toString();}傳入參數得到拼接好的xml數據后開始請求順豐:
public String callSf(String xmlStr) {CallExpressServiceTools client = CallExpressServiceTools.getInstance();log.info("開始調用順豐接口下單,請求報文:{}", xmlStr);String respXml = client.callSfExpressServiceByCSIM(null, xmlStr, clientCode, checkword);log.info("請求完成,返回報文:{}", respXml);return respXml;}得到報文后在進行解析即可
總體來說使用順豐新的sdk接入還是非常方便的。
記錄下代碼,方面下次使用。
總結
以上是生活随笔為你收集整理的JAVA接入顺丰快递的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ECSHOP_顺丰_货到付款设置
- 下一篇: edup无线网卡linux,linux