准备做一个电商平台,想接入一个快递查询类的接口,能提供免费的代码么?要基于java平台的,谢谢!
2条回答 默认 最新
- huimins123 2016-07-19 12:21关注
这是我在快递网上找到的快递查询接口
下面是JAVA代码:
package com.kuaidi.openapi;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;
import java.util.List;
import java.util.Map;public class Openapi {
private String app_key = ""; private String api_url = "http://api.kuaidi.com/openapi.html?"; private String show = "0"; private String muti = "0"; private String order = "desc"; /** * 您获得的快递网接口查询KEY。 * * @param app_key * */ public void setApp_key(String app_key) { this.app_key = app_key; } /** * 设置数据返回类型。0: 返回 json 字符串; 1:返回 xml 对象 * * @param show * */ public void setShow(String show) { this.show = show; } /** * 设置返回物流信息条目数, 0:返回多行完整的信息; 1:只返回一行信息 * * @param muti * */ public void setMuti(String muti) { this.muti = muti; } /** * 设置返回物流信息排序。desc:按时间由新到旧排列; asc:按时间由旧到新排列 * * @param order * */ public void setOrder(String order) { this.order = order; } /** * * @param nu * @param exname * @return result */ public String query(String nu, String exname) { String sign = "id=" + app_key + "&com=" + exname + "&nu=" + nu + "&show=" + show + "&muti=" + muti + "&order=" + order; String result = sendGet(api_url + sign); return result; } /** * 向指定URL发送GET方法的请求 * * @param url * 发送请求的URL * @return URL 所代表远程资源的响应结果 */ private static String sendGet(String url) { String result = ""; BufferedReader in = null; try { URL realUrl = new URL(url); // 打开和URL之间的连接 URLConnection connection = realUrl.openConnection(); // 设置通用的请求属性 connection.setRequestProperty("accept", "*/*"); connection.setRequestProperty("connection", "Keep-Alive"); connection.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)"); // 建立实际的连接 connection.connect(); // 定义 BufferedReader输入流来读取URL的响应 in = new BufferedReader(new InputStreamReader(connection.getInputStream())); String line; while ((line = in.readLine()) != null) { result += line; } } catch (Exception e) { System.out.println("发送GET请求出现异常!" + e); e.printStackTrace(); } // 使用finally块来关闭输入流 finally { try { if (in != null) { in.close(); } } catch (Exception e2) { e2.printStackTrace(); } } return result; }
}
1.例子:
package com.kuaidi.openapi;public class OpenapiExample {
private static String key="************";//官网申请的key public static void main(String[] args){ Openapi o = new Openapi(); o.setApp_key(key); String result =o.query("111111", "quanfengkuaidi"); System.out.println(result); }
}
以上代码很简单吧,快递查询接口代码就全部写完了,希望对你有帮助,你可以去他们官网上直接申请,接入到你的电商平台上。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
- ¥15 如何在scanpy上做差异基因和通路富集?
- ¥20 关于#硬件工程#的问题,请各位专家解答!
- ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
- ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
- ¥30 截图中的mathematics程序转换成matlab
- ¥15 动力学代码报错,维度不匹配
- ¥15 Power query添加列问题
- ¥50 Kubernetes&Fission&Eleasticsearch
- ¥15 報錯:Person is not mapped,如何解決?