昨天做的公司项目需要用到快递查询的接口,我在网上找了挺多的资料,后来自己整理了一下,具体的实现步骤如下(我使用的是聚合科技的快递接口):

1.先在聚合科技注册一个账号,然后免费申请使用这个接口,就可以得到一个分配给你的key

2.点击个人中心->数据中心->我的接口->接口,就可以查看API文档、实例代码。

3.点击个人中心->数据中心->我的接口->测试,在提示的地方输入真实正确的库快递信息就可以查到物流信息。

4.查询成功后可以在该页面的请求详情中看到自己的key:

5.最后是根据给出的实例代码就可以在项目中使用了。

这是我自己整合的一些重要参数:

名称

类型

必填

说明

com

String

需要查询的快递公司编号

no

String

需要查询的订单号

key

String

应用APPKEY(应用详细页查询)

dtype

String

返回数据的格式,xml或json,默认json

SenderPhone

Int

发件人的手机后四位(顺丰快递查询时要提供发件人或者收件人的其中一个)

ReceiverPhone

Int

收件人的手机号码后四位(顺丰快递查询时要提供发件人或者收件人的其中一个)

接口地址

Url

http://v.juhe.cn/exp/index

请求方式

Get/post

支持格式

Json/xml

还有一些快递公司的编号:

快递公司

快递公司编号

顺丰

sf

申通

sto

圆通

yt

汇通

ht

中通

zto

EMS

ems

韵达

yd

实例代码如下:

(使用 net.sf.json.JSONObject包是需要导入一些jar包,不然会报错,这个在百度上搜索会有一大堆的,就不放上来了。)

import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.util.HashMap;
import java.util.Map;import net.sf.json.JSONObject;public class Test {/***常用快递调用示例代码 - 聚合数据*在线接口文档:http://www.juhe.cn/docs/43**/public static final String DEF_CHATSET = "UTF-8";public static final int DEF_CONN_TIMEOUT = 30000;public static final int DEF_READ_TIMEOUT = 30000;public static String userAgent =  "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.66 Safari/537.36";//配置您申请的KEYpublic static final String APPKEY ="你申请的key";//1.常用快递查询APIpublic static void getRequest1(){String result =null;String url ="http://v.juhe.cn/exp/index";//请求接口地址Map params = new HashMap();//请求参数params.put("com","快递公司编号");//需要查询的快递公司编号params.put("no","订单号");//需要查询的订单号params.put("key",APPKEY);//应用APPKEY(应用详细页查询)params.put("dtype","json");//返回数据的格式,xml或json,默认jsontry {result =net(url, params, "GET");JSONObject object = JSONObject.fromObject(result);if(object.getInt("error_code")==0){System.out.println(object.get("result"));}else{System.out.println(object.get("error_code")+":"+object.get("reason"));}} catch (Exception e) {e.printStackTrace();}}//2.快递公司编号对照表public static void getRequest2(){String result =null;String url ="http://v.juhe.cn/exp/com";//请求接口地址Map params = new HashMap();//请求参数try {result =net(url, params, "GET");JSONObject object = JSONObject.fromObject(result);if(object.getInt("error_code")==0){System.out.println(object.get("result"));}else{System.out.println(object.get("error_code")+":"+object.get("reason"));}} catch (Exception e) {e.printStackTrace();}}public static void main(String[] args) {(new Test()).getRequest1();(new Test()).getRequest2();}/**** @param strUrl 请求地址* @param params 请求参数* @param method 请求方法* @return  网络请求字符串* @throws Exception*/public static String net(String strUrl, Map params,String method) throws Exception {HttpURLConnection conn = null;BufferedReader reader = null;String rs = null;try {StringBuffer sb = new StringBuffer();if(method==null || method.equals("GET")){strUrl = strUrl+"?"+urlencode(params);}URL url = new URL(strUrl);conn = (HttpURLConnection) url.openConnection();if(method==null || method.equals("GET")){conn.setRequestMethod("GET");}else{conn.setRequestMethod("POST");conn.setDoOutput(true);}conn.setRequestProperty("User-agent", userAgent);conn.setUseCaches(false);conn.setConnectTimeout(DEF_CONN_TIMEOUT);conn.setReadTimeout(DEF_READ_TIMEOUT);conn.setInstanceFollowRedirects(false);conn.connect();if (params!= null && method.equals("POST")) {try {DataOutputStream out = new DataOutputStream(conn.getOutputStream());out.writeBytes(urlencode(params));} catch (Exception e) {// TODO: handle exception}}InputStream is = conn.getInputStream();reader = new BufferedReader(new InputStreamReader(is, DEF_CHATSET));String strRead = null;while ((strRead = reader.readLine()) != null) {sb.append(strRead);}rs = sb.toString();} catch (IOException e) {e.printStackTrace();} finally {if (reader != null) {reader.close();}if (conn != null) {conn.disconnect();}}return rs;}//将map型转为请求参数型public static String urlencode(Map<String,Object>data) {StringBuilder sb = new StringBuilder();for (Map.Entry i : data.entrySet()) {try {sb.append(i.getKey()).append("=").append(URLEncoder.encode(i.getValue()+"","UTF-8")).append("&");} catch (UnsupportedEncodingException e) {e.printStackTrace();}}return sb.toString();}}

关于快递查询接口的实现相关推荐

  1. thinkphp 助手函数url不生成https_如何用ThinkPHP框架写一个快递查询接口

    ThinkPHP是php程序员们经常使用的框架之一,运用框架来开发网站无疑减轻了我们代码量,加快了我们的开发速度,框架底层封装的方法和函数使用起来简直不能太爽.今天给大家总结一个小案例,如何实现一个快 ...

  2. 企业如何挑选和使用快递查询接口?

    电商订单履行的过程中充满了英文首字母缩写词.从WMS到FBA再到ERP,人们常常会感觉到零售商们坐在一碗字母汤里游泳!在这些行话中,有一个缩写词可以将它们连接在一起那就是:API. API可以帮助线上 ...

  3. 快递100快递实时快递查询接口API案例代码

    一.实时快递查询接口 1.1 请求地址 https://poll.kuaidi100.com/poll/query.do 1.2 请求类型 post 1.3 输入参数 请求参数(header) 名称 ...

  4. PHP快递查询接口api和快递单号智能判断PHP代码

    如果电商企业想将业务提升到一个新的水平,则应考虑接入第三方快递查询API接口.快递查询API接口提供了很多好处,并且可以为电商企业.微商带来强大的竞争优势.因为相对于独立一家家对接各个快递公司的服务接 ...

  5. python全国快递查询接口和电子面单打印接口,一次接入全国快递公司

    快递100python快递查询接口-一次性接入顺丰.京东.申通.圆通.韵达.中通.天天.百世.邮政.EMS等主流快递公司,只需要复制源码,并将部分参数修改为您的账户参数即可. 此python接口dem ...

  6. php快递查询接口,一次接入顺丰、京东、申通、圆通、韵达、中通、天天、百世、邮政、EMS等主流快递公司

    快递100php快递查询接口-一次性接入顺丰.京东.申通.圆通.韵达.中通.天天.百世.邮政.EMS等主流快递公司,只需要复制源码,并将部分参数修改为您的账户参数即可. 此php接口demo目录内容包 ...

  7. 快递查询接口 蛮不错

    今天没事发现一个快递查询接口 蛮不错 支持顺丰.申通.圆通等各大快递商和物流公司 口才太差了 随便写了下大家不要见笑. 引用web服务 http://webservice.36wu.com/expre ...

  8. 快递100开放快递查询接口

    http://www.kuaidi100.com/query?type=快递运营商名&postid=快递单号 type支持的快递公司及参数说明:https://cdn.kuaidi100.co ...

  9. 免费的快递查询接口,不需要key

    免费的快递查询接口 1.第一个接口只需要快递单号就可以查询. https://sp0.baidu.com/9_Q4sjW91Qh3otqbppnN2DJv/pae/channel/data/async ...

  10. 免费快递查询接口不限量对接

    快递查询接口(物流跟踪接口)http://www.kdniao.com/api-all 是快递鸟为用户提供的定制化服务,用户可将订单信息通过快递鸟订阅给快递公司,快递公司更新轨迹后,快递鸟将实时转换成 ...

最新文章

  1. Eclipse使用Tomcat发布项目时出现YadisException异常解决方案
  2. GitHub 的微服务架构设计与实践
  3. opencv-python处理图片的一些列操作之几何变换
  4. 面向程序员的数据挖掘指南: 第二章 从推荐系统开始
  5. 近期GitHub上最热门的开源项目(附链接)
  6. 推荐算法--利用用户行为数据(02)
  7. 吴恩达《机器学习》学习笔记九——神经网络相关(1)
  8. python重定向网页_【Python网页分析】httplib库的重定向处理
  9. html对话框跳转页面,html页面的简单对话框(alert, confirm, prompt)
  10. CEF使用的几个注意点
  11. 前端基础知识(持续更新中)
  12. vf程序设计与c语言,周四的C语言和VF,这些你有了么?
  13. LNMP详解(十二)——Nginx URL重写实战
  14. 读掘金小册组件精讲总结1
  15. java 强制转换double_JAVA强制类型转换
  16. 大学物理公式和名词整理
  17. 物联网技术概论:第2章
  18. Goole Tag Manager 介绍
  19. 计算机公式怎么计算合计,excel表格函数数据求和公式是什么-Excel中怎么用公式计算合计...
  20. c语言机票座位预定系统_c语言编写~~~机票座位预订系统

热门文章

  1. 2022年最新广播电视广告报价(共23份)
  2. Jmockit使用详解之Mocking
  3. VirtulBox安装虚拟机(鼠标点击时)0x00000000指令引用的0x00000000内存该内存不能为written错误解决方案...
  4. html div边框宽度,边框的宽度
  5. 如何设置苹果手机铃声
  6. 【Tidy2】Notepad++的html格式化插件
  7. excel表格打印每页都有表头_Excel打印时怎么让每一页都包括表头?
  8. java入门拼图小游戏_【java】JavaFX从零开始实现拼图小游戏
  9. 重积分的计算机应用开题报告,重积分的数值计算【信息科学与技术专业】【毕业设计 文献综述 开题报告】.docx...
  10. 2021-08-16