圆通电子面单接口对接
最近有个项目需要与圆通电子面单接口对接。
首先查看了官方文档API: http://open.yto.net.cn/openplatform/doc
接口使用的是XML格式的数据。
首先说一下xml数据格式
因为之前一直是使用的json数据格式,结合一些文章来看,决定使用com.thoughtworks.xstream,
//转化为xmlprivate String changeToXml(SendVo param){XStream xs = new XStream();xs.alias("RequestOrder",SendVo.class);xs.alias("item", Item.class);xs.alias("sender",Sender.class);xs.alias("receiver",Sender.class);String result = xs.toXML(param).replaceAll("\\s|\r|\t|\n","");return result;}
便可以直接把bean更改为xml数据
这里有些要注意的地方!经过md5(16位)和base64后的内容就为 LghTkEmsD2tbQ3fsIBRcBg==。
最开始的时候使用了MD5加密但是结果始终不是他给出的栗子。
后来看到一篇文章:https://blog.csdn.net/wdd668/article/details/78987247
public static String YuanTong(String sourceStr) {String result = "";try {MessageDigest md5 = MessageDigest.getInstance("MD5");byte[] bytes = md5.digest((sourceStr).getBytes(Charset.forName("utf-8")));result = new String(Base64.encodeBase64(bytes),"utf-8");
// result = Base64.encode(bytes);} catch (Exception e) {e.printStackTrace();
// logger.info("圆通生成签名出错:{}", e.getMessage());}return result;}
解决了数据转化问题。接下来又迎来了访问圆通接口的问题················
他的官网上直说了使用http、post访问。我便用了
CloseableHttpClient httpclient
HttpPost httppost = new HttpPost(url);
CloseableHttpResponse httpResponse = httpclient.execute(httppost);
然而。返回的却是。。500
后来在网上偶然找到这篇文章:http://yuncode.net/code/c_57e0eb4e1ef1614
采用了如下方法
/*** 向指定 URL 发送POST方法的请求* @since 2018.05请求圆通数据引入.* @param url 发送请求的 URL* @param params 请求的参数集合* @return 远程资源的响应结果*/public static String sendPost(String url, Map<String, String> params) {OutputStreamWriter out = null;BufferedReader in = null;StringBuilder result = new StringBuilder();try {URL realUrl = new URL(url);HttpURLConnection conn =(HttpURLConnection) realUrl.openConnection();// 发送POST请求必须设置如下两行conn.setDoOutput(true);conn.setDoInput(true);// POST方法conn.setRequestMethod("POST");// 设置通用的请求属性conn.setRequestProperty("accept", "*/*");conn.setRequestProperty("connection", "Keep-Alive");conn.setRequestProperty("user-agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");conn.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");conn.connect();// 获取URLConnection对象对应的输出流out = new OutputStreamWriter(conn.getOutputStream(), "UTF-8");// 发送请求参数if (params != null) {StringBuilder param = new StringBuilder();for (Map.Entry<String, String> entry : params.entrySet()) {if(param.length()>0){param.append("&");}param.append(entry.getKey());param.append("=");param.append(entry.getValue());}out.write(param.toString());}// flush输出流的缓冲out.flush();// 定义BufferedReader输入流来读取URL的响应in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));String line;while ((line = in.readLine()) != null) {result.append(line);}} catch (Exception e) {e.printStackTrace();}//使用finally块来关闭输出流、输入流finally{try{if(out!=null){out.close();}if(in!=null){in.close();}}catch(IOException ex){ex.printStackTrace();}}return result.toString();}
----额暂时记下等会来研究为什么不可以使用上面的方法访问
所有东西都处理完毕了···················
今天导了一些数据,,,悲剧了 (5.6W条数据吧)
圆通电子面单接口对接相关推荐
- 免费圆通电子面单接口对接
电子面单接口是快递鸟提供给独立电商.仓储管理系统.物流供应链等物流系统平台使用的下单接口,满足客户在线发货需求并提供打印面单的服务,客户通过网络选择物流公司发送请求通知贵公司有快递要发货,把数据通过此 ...
- 电商对接使用圆通电子面单接口方法
电子面单接口是快递鸟提供给独立电商.仓储管理系统.物流供应链等物流系统平台使用的下单接口,满足客户在线发货需求并提供打印面单的服务,客户通过网络选择物流公司发送请求通知贵公司有快递要发货,把数据通过此 ...
- 电商适用电子面单接口对接案例
电子面单接口现在有快递公司.菜鸟和快递鸟提供 快递公司是一家家合作,要接口文档,逐一对接 菜鸟和快递鸟是电子面单接口集成方,能打印多家快递电子面单,菜鸟目前支持15家,快递鸟支持20家,基本上都是常用 ...
- 天天快递电子面单接口对接说明及案例
1.接口类型说明 1)接口支持的消息接收方式:HTTP POST 2)请求方法的编码格式(utf-8):"application/x-www-form-urlencoded;charset= ...
- 圆通电子面单接口申请案例(PHP)
电子面单是一种通过热敏纸打印输出纸质×××的物流服务.通过热感应显示文字,打印速度比传统针式打印速度提升4~6倍.电子面单以接口形式嵌入到自己的系统.网站上,可以在自己的平台操作打印电子面单. 1.接 ...
- 圆通快递查询电子面单接口对接快递鸟api指南
一.接入前准备(TO商家业务人员) 1.申请快递鸟用户ID和API key 1.1登录快递鸟官网注册页面http://www.kdniao.com/reg注册快递鸟账号: 1.2登录快递鸟用户管理后台 ...
- JD京东物流电子面单接口对接文档-快递鸟
1.注册账号http://www.kdniao.com/reg 2.在官网登录进入用户管理后台,进行实名认证,开通接口 3.技术对接及联调(登陆官网使用调试平台进行测试.) 4.上线 1.接口类型 ...
- 电子面单接口申请对接(返回电子面单模板)
接口支持的消息接收方式:HTTPPOST 请求方法的编码格式(utf-8):"application/x-www-form-urlencoded;charset=utf-8" 请求 ...
- 常用快递电子面单接口API对接方法
快递电子面单接口API比较常用在电商.仓储系统和ERP系统,对接后不用下载安装软件,可以直接嵌入系统网站调用. 目前有快递鸟和菜鸟提供集成的电子面单打印接口,分别支持20,15家快递的电子面单打印 1 ...
- 多个电子面单接口平台分析和对接
电子面单是一种通过热敏纸打印输出纸质物流面单的物流服务.通过热感应显示文字,打印速度比传统针式打印速度提升4~6倍.电子面单以接口形式嵌入到自己的系统.网站上,可以在自己的平台操作打印电子面单. 对比 ...
最新文章
- 在 Linux 上创建一个加密文件保险库
- CSS的特性之层叠性介绍
- Emmet使用-----HTML
- 3、AngularJS2 架构
- Linux下的CUDA多版本管理
- Block 循环引用(中)
- hiho1015(kmp+统计出现次数)
- initcall机制原理及实践
- 计算机中算术逻辑单元负责,算术逻辑单元可实现 算术逻辑单元的发展
- 模拟电子技术基础 第二章 常用半导体器件原理
- 聚合数据API接口测试详细步骤
- wav音乐里面竟然有病毒?
- Person Search
- 学习笔记(二):使用 TensorFlow 的起始步骤(First Steps with TensorFlow)
- 2023春节祝福系列第一弹(下)(放飞祈福孔明灯,祝福大家身体健康)(附完整源代码及资源免费下载)
- 《共同基金常识》书中的精髓:如何用好指数基金,做好理财投资?
- web端拨打电话、发送短信
- 玩转你的86400秒
- Android CMake 编译传递宏定义参数
- .aspx 通过ajax方式提交HTML富文本
热门文章
- MTK 6589充电模块分析
- 存储基础知识--存储网络
- 思科路由器配置命令(一)
- 石墨烯 量子计算机,《Nature Nanotech.》又是石墨烯,这次对量子计算机下手了!...
- uefi 懒人版黑苹果_macOS Sierra 10.12.6(16G29) 变色龙引导懒人版CDR黑苹果镜像
- reviewboard mysql_ReviewBoard安装配置
- 福昕PDF电子文档处理套装软件中文企业版9.01
- PMP考试中一些解题思路
- System.Exception: 操作必须使用一个可更新的查询
- [转] 各大著名公司音效小评(DNSe/BBE/SRS/PlayFX/杜比/Full Sound…)