查快递的时候发现了一个http://www.kaidi100.com 是金蝶旗下的下个网站,做得很不错,几乎可以查所以的快递公司的,该站提供了API查询快递,API需要申请key.申请Key需要做它网站链接。无奈,哥的网站早到期,没续费了,于是trace了一把请求,直接用Java httpurlconnection 搞起,只是给个例子,可以再接着封装。中间遇到过乱码问题,最后发现是内容进行了gzip压缩,trace时候没有仔细看response header ,吃了回亏 教训。
package com.hailsoft.test; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.MalformedURLException; import java.net.URL; import java.util.zip.GZIPInputStream; /** * @author admin * */ public class App { public static void main(String[] args) { String url = "http://www.kuaidi100.com/query?type=shentong&postid=请更换为你的申通运单号&id=1&valicode=&temp=0.3015635129995644"; try { HttpURLConnection.setFollowRedirects(true); HttpURLConnection http = (HttpURLConnection) (new URL(url).openConnection()); http.setDoOutput(true); http.setDoOutput(true); http.setInstanceFollowRedirects(true); http.setRequestMethod("GET"); http.setRequestProperty("Connection", "keep-alive"); http.setRequestProperty("X-Requested-With", "XMLHttpRequest"); http.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.92 Safari/537.1 LBBROWSER"); http.setRequestProperty("Accept", "*/*"); http.setRequestProperty("Referer", "http://www.kuaidi100.com/"); http.setRequestProperty("Accept-Language", "zh-CN,zh;q=0.8"); http.setRequestProperty("Accept-Charset", "GBK,utf-8;q=0.7,*;q=0.3"); http.setRequestProperty("Accept-Encoding", "gzip,deflate,sdch"); System.out.println("response is : "+http.getResponseCode()+" "+http.getResponseMessage()); String contentEncoding = http.getContentEncoding(); System.out.println("response encoding is : "+contentEncoding); InputStream in = null; if("gzip".equalsIgnoreCase(contentEncoding)){ in = new GZIPInputStream(http.getInputStream()); }else{ in = http.getInputStream(); } ByteArrayOutputStream baos = new ByteArrayOutputStream(); int data = -1; while((data = in.read())!=-1){ baos.write(data); } String resp = baos.toString("utf8"); System.out.println(resp); } catch (MalformedURLException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
相关推荐
在实际应用中,你还需要实现一个短信验证码的生成逻辑,通常会使用随机数生成器来创建一个一定位数的数字验证码,并将其存储在服务器端,以便稍后验证用户输入的验证码是否正确。 另外,为了发送短信,你需要将生成...
【Java Web 快递代领平台源代码】是一款基于JavaWeb技术实现的校园快递代领系统,主要用于方便校园内学生、教职工收取不便亲自领取的快递。该系统采用经典的三层架构设计,包括表现层(jsp)、业务逻辑层(servlet)...
【快递管理系统课设 (servlet+javabean+jsp)】是一个典型的Java Web项目,用于实现快递业务的管理功能。这个课设主要基于Servlet、JavaBean和JSP技术,这三者是Java Web开发中的核心组件,它们共同构建了动态网站的...
基于Java的校园二手物品交易网站的设计与实现全文共3页,当前为第1页。基于Java的校园二手物品交易网站的设计与实现全文共3页,当前为第1页。基于Java的校园二手物品交易网站的设计与实现 基于Java的校园二手物品...
Java SSM框架,全称Spring、Struts...总的来说,通过Java SSM框架实现用户、管理员和快递员的注册登录功能,涵盖了后端开发的多个方面,包括框架集成、数据库设计、安全性、用户体验等,是一个全面的Web应用开发实践。
第1篇 Java编程基础 第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境 5 1.2.4 测试JDK配置...
第1篇 Java编程基础 第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境 5 1.2.4 测试JDK配置是否成功 7 实例1 开发第一个Java...
第1篇 Java编程基础 第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境 5 1.2.4 测试JDK配置是否成功 7...
- 会员/非会员自助取件:用户收到短信通知后,到指定快递柜输入验证码取件。 3. **系统解决方案** - **系统框架**:包括后台服务器、快递柜终端、Web PC客户端和APP客户端四个子系统。 - **后台服务器**:运行...
快递和外卖需要实现支付功能。发布界面都要实现上传图片功能。填写发布信息时手机号码和微信号自动获取用户注册时填写的,可以进行修改。 接单模块。按快递、外卖、求助分类,可以按照酬金高低、宿舍、时间进行筛选...
Java范例开发大全(全书源程序),目录如下: 第1篇 Java编程基础 第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境...
必须要输入验证码 购物车存放在redis当中,限制频繁登陆。防止跑库。 主要数据存放在mongodb 登陆界面 注册界面 用户界面 管理员界面 厨师界面 送货界面 消费者 厨师 快递小哥 店主 同时操作需要使用线程同步 ...
第1篇 Java编程基础 第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境 5 1.2.4 测试JDK配置是否成功 7 实例1 开发第一个Java...
3. 会员/非会员自助取件:收件人收到短信通知后,通过输入验证码在快递柜上操作取件。 系统解决方案中,快递柜系统由四个功能子系统构成: 1. 后台服务器:运行在Windows 2003/2021企业版,可扩展为集群式服务器...
Java;SSM;MySQL; 萌宠优购系统的开发主要是对购物车以及商品管理等功能的设计,用现有的技术进行系统设计,快速的处理信息。与管理员而言要方便对信息进行管理,而与用户交互的界面需要更美观、更具操作性,让...
3. 会员/非会员自助取件:用户输入验证码后,柜门自动打开,用户取走包裹。 系统解决方案详细阐述了快递柜系统的架构,由四个功能子系统构成: 1. 后台服务器:运行Windows 2003/2008企业版,可扩展为集群式服务器...
- 输入验证码,系统验证无误后开启相应的柜门。 - 收件人取出快递物品并关闭柜门。 3. **后台管理系统操作**: - 监控快递柜的状态,包括是否满载、是否有异常情况等。 - 分析用户行为数据,为优化服务提供依据...
输入验证码打开对应的柜格。 4. 取走快件。 - **会员/非会员自助服务**: 1. **会员服务**:注册会员可享受更多便捷服务,如在线充值、查询快件状态等。 2. **非会员服务**:无需注册也能通过验证码完成取件。 ...
收件人在任何方便的时候,只需前往快递柜并输入验证码即可轻松取走快件,极大地提高了物流配送的效率和便利性。 #### 二、智能快递柜操作流程 1. **快递员存放**:快递员到达指定地点后,将快件存入智能快递柜。 2...
3. **会员/非会员自助取件**:用户收到包含取件地址和验证码的提醒短信后,到指定的智能快递柜输入验证码取件。 #### 三、系统解决方案 ##### 1. 后台服务器 - **配置**:独立台式服务器,运行Windows2003/2008...