1、常用快递API接口方案常用快递API接口方案(总11页)常用快递API接口方案电商企业从接收订单-配货-打印快递单到后期的快递员收件-快递配送-轨迹查询-签收短信通知等,都需要快递接口的接入。整理目前较为常见的接口demo如下:对接流程:快递鸟网站申请接口对接联调测试上线预约取件-在线预约寄件import import public class KdGoldAPIDemo . return result; /* * MD5加密 * param str 内容 * param charset 编码方式 * throws Exception */ SuppressWarnings(unused) p
2、rivate String MD5(String str, String charset) throws Exception MessageDigest md = (MD5); (charset); byte result = (); StringBuffer sb = new StringBuffer(32); for (int i = 0; i ; i+) int val = resulti & 0xff; if (val = 0xf) (0); (val); return ().toLowerCase(); /* * base64编码 * param str 内容 * param cha
3、rset 编码方式 * throws UnsupportedEncodingException */ private String base64(String str, String charset) throws UnsupportedEncodingException String encoded = (charset); return encoded; SuppressWarnings(unused) private String urlEncoder(String str, String charset) throws UnsupportedEncodingException Stri
4、ng result = (str, charset); return result; /* * 电商Sign签名生成 * param content 内容 * param keyValue Appkey * param charset 编码方式 * throws UnsupportedEncodingException ,Exception * return DataSign签名 */ SuppressWarnings(unused) private String encrypt (String content, String keyValue, String charset) throws
5、UnsupportedEncodingException, Exception if (keyValue != null) return base64(MD5(content + keyValue, charset), charset); return base64(MD5(content, charset), charset); /* * 向指定 URL 发送POST方法的请求 * param url 发送请求的 URL * param params 请求的参数集合 * return 远程资源的响应结果 */ SuppressWarnings(unused) private String s
6、endPost(String url, Map params) OutputStreamWriter out = null; BufferedReader in = null; StringBuilder result = new StringBuilder(); try URL realUrl = new URL(url); HttpURLConnection conn =(HttpURLConnection) (); . return result; /* * MD5加密 * param str 内容 * param charset 编码方式 * throws Exception */ S
7、uppressWarnings(unused) private String MD5(String str, String charset) throws Exception MessageDigest md = (MD5); (charset); byte result = (); StringBuffer sb = new StringBuffer(32); for (int i = 0; i ; i+) int val = resulti & 0xff; if (val = 0xf) (0); (val); return ().toLowerCase(); /* * base64编码 *
8、 param str 内容 * param charset 编码方式 * throws UnsupportedEncodingException */ private String base64(String str, String charset) throws UnsupportedEncodingException String encoded = (charset); return encoded; SuppressWarnings(unused) private String urlEncoder(String str, String charset) throws Unsuppor
9、tedEncodingException String result = (str, charset); return result; /* * 电商Sign签名生成 * param content 内容 * param keyValue Appkey * param charset 编码方式 * throws UnsupportedEncodingException ,Exception * return DataSign签名 */ SuppressWarnings(unused) private String encrypt (String content, String keyValue
10、, String charset) throws UnsupportedEncodingException, Exception if (keyValue != null) return base64(MD5(content + keyValue, charset), charset); return base64(MD5(content, charset), charset); /* * 向指定 URL 发送POST方法的请求 * param url 发送请求的 URL * param params 请求的参数集合 * return 远程资源的响应结果 */ SuppressWarnings
11、(unused) private String sendPost(String url, Map params) OutputStreamWriter out = null; BufferedReader in = null; StringBuilder result = new StringBuilder(); try URL realUrl = new URL(url); HttpURLConnection conn =(HttpURLConnection) (); . return result; /* * MD5加密 * param str 内容 * param charset 编码方
12、式 * throws Exception */ SuppressWarnings(unused) private String MD5(String str, String charset) throws Exception MessageDigest md = (MD5); (charset); byte result = (); StringBuffer sb = new StringBuffer(32); for (int i = 0; i ; i+) int val = resulti & 0xff; if (val = 0xf) (0); (val); return ().toLow
13、erCase(); /* * base64编码 * param str 内容 * param charset 编码方式 * throws UnsupportedEncodingException */ private String base64(String str, String charset) throws UnsupportedEncodingException String encoded = base64Encode(charset); return encoded; SuppressWarnings(unused) private String urlEncoder(String
14、 str, String charset) throws UnsupportedEncodingException String result = (str, charset); return result; /* * 电商Sign签名生成 * param content 内容 * param keyValue Appkey * param charset 编码方式 * throws UnsupportedEncodingException ,Exception * return DataSign签名 */ SuppressWarnings(unused) private String enc
15、rypt (String content, String keyValue, String charset) throws UnsupportedEncodingException, Exception if (keyValue != null) return base64(MD5(content + keyValue, charset), charset); return base64(MD5(content, charset), charset); /* * 向指定 URL 发送POST方法的请求 * param url 发送请求的 URL * param params 请求的参数集合 *
16、 return 远程资源的响应结果 */ SuppressWarnings(unused) private String sendPost(String url, Map params) OutputStreamWriter out = null; BufferedReader in = null; StringBuilder result = new StringBuilder(); try URL realUrl = new URL(url); HttpURLConnection conn =(HttpURLConnection) (); . return result; /* * MD5
17、加密 * param str 内容 * param charset 编码方式 * throws Exception */ SuppressWarnings(unused) private String MD5(String str, String charset) throws Exception MessageDigest md = (MD5); (charset); byte result = (); StringBuffer sb = new StringBuffer(32); for (int i = 0; i ; i+) int val = resulti & 0xff; if (v
18、al = 0xf) (0); (val); return ().toLowerCase(); /* * base64编码 * param str 内容 * param charset 编码方式 * throws UnsupportedEncodingException */ private String base64(String str, String charset) throws UnsupportedEncodingException String encoded = base64Encode(charset); return encoded; SuppressWarnings(unu
19、sed) private String urlEncoder(String str, String charset) throws UnsupportedEncodingException String result = (str, charset); return result; /* * 电商Sign签名生成 * param content 内容 * param keyValue Appkey * param charset 编码方式 * throws UnsupportedEncodingException ,Exception * return DataSign签名 */ Suppre
20、ssWarnings(unused) private String encrypt (String content, String keyValue, String charset) throws UnsupportedEncodingException, Exception if (keyValue != null) return base64(MD5(content + keyValue, charset), charset); return base64(MD5(content, charset), charset); /* * 向指定 URL 发送POST方法的请求 * param u
21、rl 发送请求的 URL * param params 请求的参数集合 * return 远程资源的响应结果 */ SuppressWarnings(unused) private String sendPost(String url, Map params) OutputStreamWriter out = null; BufferedReader in = null; StringBuilder result = new StringBuilder(); try URL realUrl = new URL(url); HttpURLConnection conn =(HttpURLConn
22、ection) (); / 发送POST请求必须设置如下两行 (true); (true); / POST方法 (POST); / 设置通用的请求属性 (accept, */*); (connection, Keep-Alive); (user-agent, Mozilla/ (compatible; MSIE ; Windows NT ;SV1); (Content-Type, application/x-www-form-urlencoded); (); / 获取URLConnection对象对应的输出流 out = new OutputStreamWriter(), UTF-8); /
23、发送请求参数 if (params != null) StringBuilder param = new StringBuilder(); for entry : () if()0) (&); (); (=); (); :+(); param:+(); (); / flush输出流的缓冲 (); / 定义BufferedReader输入流来读取URL的响应 in = new BufferedReader( new InputStreamReader(), UTF-8); String line; while (line = () != null) (line); catch (Exceptio
24、n e) (); /使用finally块来关闭输出流、输入流 finally try if(out!=null) (); if(in!=null) (); catch(IOException ex) (); return (); private static char base64EncodeChars = new char A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z, a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t
25、, u, v, w, x, y, z, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, +, / ; public static String base64Encode(byte data) StringBuffer sb = new StringBuffer(); int len = ; int i = 0; int b1, b2, b3; while (i 2); (base64EncodeChars(b1 & 0x3) 2); (base64EncodeChars(b1 & 0x03) 4); (base64EncodeChars(b2 & 0x0f) 2); (base64EncodeChars(b1 & 0x03) 4); (base64EncodeChars(b2 & 0x0f) 6); (base64EncodeCharsb3 & 0x3f); return ();
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1