[c#]代码库using System;

using System.Collections.Generic;

using System.IO;

using System.Linq;

using System.Net;

using System.Text;

using System.Web;

namespace KdGoldAPI

{

/**

*

* 快递鸟电子面单接口

*

* @see: http://www.kdniao.com/MiandanAPI.aspx

* @copyright: 深圳市快金数据技术服务有限公司

*

* ID和Key请到官网申请:http://www.kdniao.com/ServiceApply.aspx

*/

public class KdApiEOrderDemo

{

//电商ID

private string EBusinessID = "请到快递鸟官网申请http://www.kdniao.com/ServiceApply.aspx";

//电商加密私钥,快递鸟提供,注意保管,不要泄漏

private string AppKey = "请到快递鸟官网申请http://www.kdniao.com/ServiceApply.aspx";

//请求url, 正式环境地址:http://api.kdniao.cc/api/Eorderservice

private string ReqURL = "http://testapi.kdniao.cc:8081/api/EOrderService";

///

/// Json方式 电子面单

///

///

public string orderTracesSubByJson()

{

string requestData = "{'OrderCode': '012657700312'," +

"'ShipperCode':'YTO'," +

"'PayType':1," +

"'ExpType':1," +

"'Cost':1.0," +

"'OtherCost':1.0," +

"'Sender':" +

"{" +

"'Company':'LV','Name':'Taylor','Mobile':'15018442396','ProvinceName':'上海','CityName':'上海','ExpAreaName':'青浦区','Address':'明珠路73号'}," +

"'Receiver':" +

"{" +

"'Company':'GCCUI','Name':'Yann','Mobile':'15018442396','ProvinceName':'北京','CityName':'北京','ExpAreaName':'朝阳区','Address':'三里屯街道雅秀大厦'}," +

"'Commodity':" +

"[{" +

"'GoodsName':'鞋子','Goodsquantity':1,'GoodsWeight':1.0}]," +

"'AddService':" +

"[{" +

"'Name':'COD','Value':'1020'}]," +

"'Weight':1.0," +

"'Quantity':1," +

"'Volume':0.0," +

"'Remark':'小心轻放'," +

"'IsReturnPrintTemplate':1}";

Dictionary param = new Dictionary();

param.Add("RequestData", HttpUtility.UrlEncode(requestData, Encoding.UTF8));

param.Add("EBusinessID", EBusinessID);

param.Add("RequestType", "1007");

string dataSign = encrypt(requestData, AppKey, "UTF-8");

param.Add("DataSign", HttpUtility.UrlEncode(dataSign, Encoding.UTF8));

param.Add("DataType", "2");

string result = sendPost(ReqURL, param);

//根据公司业务处理返回的信息......

return result;

}

///

/// Post方式提交数据,返回网页的源代码

///

/// 发送请求的 URL

/// 请求的参数集合

/// 远程资源的响应结果

private string sendPost(string url, Dictionary param)

{

string result = "";

StringBuilder postData = new StringBuilder();

if (param != null && param.Count > 0)

{

foreach (var p in param)

{

if (postData.Length > 0)

{

postData.Append("&");

}

postData.Append(p.Key);

postData.Append("=");

postData.Append(p.Value);

}

}

byte[] byteData = Encoding.GetEncoding("UTF-8").GetBytes(postData.ToString());

try

{

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);

request.ContentType = "application/x-www-form-urlencoded";

request.Referer = url;

request.Accept = "*/*";

request.Timeout = 30 * 1000;

request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)";

request.Method = "POST";

request.ContentLength = byteData.Length;

Stream stream = request.GetRequestStream();

stream.Write(byteData, 0, byteData.Length);

stream.Flush();

stream.Close();

HttpWebResponse response = (HttpWebResponse)request.GetResponse();

Stream backStream = response.GetResponseStream();

StreamReader sr = new StreamReader(backStream, Encoding.GetEncoding("UTF-8"));

result = sr.ReadToEnd();

sr.Close();

backStream.Close();

response.Close();

request.Abort();

}

catch (Exception ex)

{

result = ex.Message;

}

return result;

}

///

///电商Sign签名

///

///内容

///Appkey

///URL编码

///DataSign签名

private string encrypt(String content, String keyValue, String charset)

{

if (keyValue != null)

{

return base64(MD5(content + keyValue, charset), charset);

}

return base64(MD5(content, charset), charset);

}

///

/// 字符串MD5加密

///

///要加密的字符串

///编码方式

///密文

private string MD5(string str, string charset)

{

byte[] buffer = System.Text.Encoding.GetEncoding(charset).GetBytes(str);

try

{

System.Security.Cryptography.MD5CryptoServiceProvider check;

check = new System.Security.Cryptography.MD5CryptoServiceProvider();

byte[] somme = check.ComputeHash(buffer);

string ret = "";

foreach (byte a in somme)

{

if (a < 16)

ret += "0" + a.ToString("X");

else

ret += a.ToString("X");

}

return ret.ToLower();

}

catch

{

throw;

}

}

///

/// base64编码

///

/// 内容

/// 编码方式

///

private string base64(String str, String charset)

{

return Convert.ToBase64String(System.Text.Encoding.GetEncoding(charset).GetBytes(str));

}

}

}

winform 打印快递电子面单_c#对接电子面单打印平台相关推荐

  1. winform 打印快递电子面单_隐私电子面单demo

    [c#]代码库using System; using System.Collections.Generic; using System.IO; using System.Linq; using Sys ...

  2. 天天快递电子面单接口对接说明及案例

    1.接口类型说明 1)接口支持的消息接收方式:HTTP POST 2)请求方法的编码格式(utf-8):"application/x-www-form-urlencoded;charset= ...

  3. JD京东物流电子面单接口对接文档-快递鸟

    1.注册账号http://www.kdniao.com/reg 2.在官网登录进入用户管理后台,进行实名认证,开通接口 3.技术对接及联调(登陆官网使用调试平台进行测试.) 4.上线   1.接口类型 ...

  4. 圆通快递查询电子面单接口对接快递鸟api指南

    一.接入前准备(TO商家业务人员) 1.申请快递鸟用户ID和API key 1.1登录快递鸟官网注册页面http://www.kdniao.com/reg注册快递鸟账号: 1.2登录快递鸟用户管理后台 ...

  5. 电商适用电子面单接口对接案例

    电子面单接口现在有快递公司.菜鸟和快递鸟提供 快递公司是一家家合作,要接口文档,逐一对接 菜鸟和快递鸟是电子面单接口集成方,能打印多家快递电子面单,菜鸟目前支持15家,快递鸟支持20家,基本上都是常用 ...

  6. 免费圆通电子面单接口对接

    电子面单接口是快递鸟提供给独立电商.仓储管理系统.物流供应链等物流系统平台使用的下单接口,满足客户在线发货需求并提供打印面单的服务,客户通过网络选择物流公司发送请求通知贵公司有快递要发货,把数据通过此 ...

  7. 电子面单打印平台对接-快递鸟

    (1)电子面单接口是快递鸟提供给独立电商.仓储管理系统.物流供应链等物流系统平台使用的下单接口. (2)为客户解决在线发货需求,商户通过网络选择快递公司发送请求通知快递公司有快递要发货. (3)客户把 ...

  8. C#-快递鸟电子面单打印API

    以下是快递鸟电子面单接口对接demo (1).只支持Json格式.接口指令1007. (2).订单编号(OrderCode)不可重复提交,重复提交系统会返回具体错误代码. (3).接口支持:顺丰(SF ...

  9. 免费电子面单Api_快递鸟接口JAVA对接调用案例

    电子面单是一种通过热敏纸打印输出纸质物流面单的物流服务.通过热感应显示文字,打印速度比传统针式打印速度提升4~6倍.电子面单以接口形式嵌入到自己的系统.网站上,可以在自己的平台操作打印电子面单. 一. ...

  10. 拼多多电子面单云打印接口对接 (跨境erp应用,电子面单应用)[拼多多获取电子面单,拼多多面单打印]

    一.简介 使用拼多多开放平台提供的拼多多电子面单功能. 拼多多开放平台提供的这两个应用的区别: 1.在于业务权限方面,跨境erp权限很多具体可以在开放平台看到,其中就包括了获取电子面单,而电子面单应用 ...

最新文章

  1. 只能是数字、字母、-和_
  2. linux sybase系统,linux sybase 安装全过程(写给初学者)
  3. 如何取回服务器上的文件网页设计,毕业设计(论文)-基于内容中心网络开发平台的文件分享精选.docx...
  4. SAP Leonardo机器学习Restful API如何获得Access Token
  5. python赋值浅拷贝和深拷贝的区别_浅拷贝、深拷贝和普通赋值操作有什么区别?...
  6. vSphere 5.5:使用 RVC VSAN 监控工具第 2 部分
  7. WPF老矣,尚能饭否——且说说WPF今生未来(中):策略
  8. UNITY2021 开发安卓app 扫描一维二维条码
  9. R语言:决策树结果可视化
  10. matlab命令行窗口显示长度设置_MATLAB的命令窗口、图形窗口
  11. 成功的运行了DC模拟器+斑鸠!!!
  12. ERROR 1366 (HY000): Incorrect string value: '\xE8\xB5\xB5\xE9\x9B\xB7' for column 'Sname' at row 1
  13. android系统源码学习 -- 蓝牙 bluetooth (一) 入门
  14. 新型冠状病毒传染模型SI、SIS、SIR、SEIR
  15. Zero-shot Cross-lingual Transfer of Prompt-based Tuning with a Unified Multilingual Prompt
  16. 各开发者android平台的注册及上传方法汇总
  17. 关于linux上运行ONS
  18. 【产品升级】愚人节不愚人,效率源手机取证产品SPF9139升级来袭!
  19. 安卓智能地图开发与实施六:离线基础底图 - ArcGIS Runtime SDK for Android(Version 100.0.0)
  20. 经典生产者-消费者问题解析

热门文章

  1. 从幼苗长成大树 中美两国GIS软件技术已并驾齐驱
  2. linux lefse分析,科学网-linux本地化进行lefse分析-林国鹏的博文
  3. SpringBoot 项目(若依脚手架)2
  4. 二级计算机考试什么最难,计算机二级考试难吗 考试内容是什么
  5. 安装pip的三种方法
  6. 解决谷歌浏览器最新chrome94版本CORS跨域问题(海康视频插件无法播放的问题)
  7. x线计算机断层摄影机房面积应不小于,X射线计算机断层摄影放射防护要求GBZ165-2012.pdf...
  8. 苹果7pnfc功能门禁卡_苹果7手机nfc怎么开启 苹果手机门禁卡nfc功能
  9. C# 读取写入Json文件
  10. 关于程序员清明节假期延长至七天的通知