关键词不能为空

当前您在: 主页 > 英语 >

京东电子面单模板及接口对接方法

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-02 08:08
tags:

-

2021年2月2日发(作者:机筒)


京东电子面单模板及接口对接方法



1.


接口描述



1


)接口支持的消息接收方式:


HTTP POST


2


)请求方法的编码格式


(utf-8)




3


< p>
API


地址:


/Ebusiness/


4


)面单所属快递:京东物流



5


)接口提供:快递鸟




2.


请求系统级参数



参数名称



类型



说明



请求内容需进行


URL(utf-8)


编码。请求内容


JSON


格式,须和


D ataType


一致。



必须要求



RequestData


String


R


R


R


R


O


EBusinessID


String

商户


ID


,请在


我的服务


页面查看。



RequestType


String


请求指令类型:


1007



DataSign


DataType


String


数据内容签名:把


(< /p>


请求内容


(


未编码


)+AppKey)


进行


MD5


加密 ,然



Base64


编码,

< p>
最后进行


URL(utf-8)


编码。

< p>
详细过程请查看


Demo




String


请求、返回数据类型:只支持


JSON


格式




备注:


R-


必填



Required



O-


可选



Optional




C-


报文中该 参数在一定条件下可选



Conditional






3.


接口参数



1


)请求内容字段定义



参数名称



CallBack


MemberID


CustomerName


CustomerPwd


SendSite


ShipperCode


LogisticCode


OrderCode


MonthCode


PayType


ExpType


IsNotice


类型



String


String


String


String


String


String


String


String


String


Int


String


Int


说明



用户自定义回调信息



会员标识



电子面单客户账号(与快递网点申请)



电子面单密码



收件网点标识



快递公司编码



快递单号



订单编号



月结编码



邮费支付方式


:1-


现付,


2-


到付,< /p>


3-


月结,


4-


第三方支付



快递类型:


1-


标准快件



是否通知快递员上门揽件:


0-


通知;


1-


不通< /p>


是否必须



O


O


O


O


O


R


O


R


C


R


R


O


知;不填则默认为


0


Cost


OtherCost


Company


Name


Tel


Mobile


Receiver


PostCode


Double


Double


String


String


String


String


String


寄件费(运费)



其他费用



收件人公司



收件人



O


O


O


R


电话与手机,必填一个



R


收件人邮编



收件省(如广东省,不要缺少“省”)



收件市(如深圳市,不要缺少“市”)



O


R


R


ProvinceName


String


CityName


String


ExpAreaName


String


Address


Company


Name


Tel


Mobile


Sender


PostCode


String


String


String


String


String


String


收件区


(如福田区,


不要缺少


“区”



“县”




O


收件人详细地址



发件人公司



发件人



R


O


R


电话与手机,必填一个



R


发件人邮编



发件省(如广东省,不要缺少“省”)



发件市(如深圳市,不要缺少“市”)



O


R


R


ProvinceName


String


CityName


String


ExpAreaName


String


Address


StartDate


EndDate


Weight


Quantity


Volume


Remark


String


String


String


Double


Int


Double


String


发件区


(如福田区,< /p>


不要缺少


“区”



“县”




O


发件人详细地址



R


上门取货时间段


:


O


格式化,本文中所有时间格式相同



物品总重量


kg


件数


/


包裹数



物品总体积


m3


备注



AddServices


O


O


O


O


O


Name


AddService


Value


CustomerID


String


String


String


增值服务名称



增值服务值



客户标识(选填)



Commoditys


O


O


O


Commodity


GoodsName


String


商品名称



R


GoodsCode


String


商品编码



商品数量



商品价格



商品重量


kg


商品描述



商品体积


m3


返回电子面单模板:< /p>


0-


不需要;


1-


需要



O


O


O


O


O


O


O


Goodsquantity


Int


GoodsPrice


GoodsWeight


GoodsDesc


GoodsVol


IsReturnPrintTemplate


Double


Double


String


Double


String



2


)返回参数定义



参数名称



EBusinessID


OrderCode


ShipperCode


LogisticCode


MarkDestination


OriginCode


OriginName


DestinatioCode


DestinatioName


SortingCode


PackageCode


Success


ResultCode


Reason


UniquerRequestNumber


PrintTemplate


EstimatedDeliveryTime


Callback


类型



String


String


String


String


String


String


String


String


String


String


String


Bool


String


String


String


String


String


String


说明



用户


ID


订单编号



快递公司编码



快递单号



大头笔



始发地区域编码



始发地


/


始发网点



目的地区域编码



目的地


/


到达网点



分拣编码



集包编码



成功与否



错误编码



失败原因



唯一标识



面单打印模板



订单预计到货时间


yyyy-mm-dd


用户自定义回调信息



必须要求



R


R


R


R


O


O


O


O


O


O


O


R


R


O


R


O


O


O


Order




对接源码



import edReader;


import ption;



import treamReader;


import StreamWriter;


import ortedEncodingException;


import LConnection;


import


import oder;


import p;


import


import 64;


import eDigest;





public class KdGoldAPIDemo {












/**



//




ID


private String EBusinessID=







//



商加密私


钥< /p>


,注意保管,不要泄漏



private String AppKey=







//




url,


正式



境地址:


/api/Eorderservice


private String ReqURL=









* Json


方式




子面






* @throws Exception








*/




public String orderOnlineByJson() throws Exception{



String requestData=










































































































































aylor','Mobile': '','ProvinceName':'




','CityName':'



< br>','ExpAreaName':'


青浦区


','Ad dress':'


明珠路


73



'},





















































北京


','CityName':'


北京


','ExpAreaName':'


朝阳区


','Address':'


三里屯街道雅秀大厦


'},





















































鞋子


','Goodsquantity':1,'GoodsWeight':1.0}],< /p>






































































小心




',

















































}


/**



Map params = new HashMap();


(


, urlEncoder(requestData,


(


, EBusinessID);


(


,


String dataSign=encrypt(requestData, AppKey,


(


, urlEncoder(dataSign,


(


,



String result=sendPost(ReqURL, params);



//


根据公司


业务处


理返回的信息


......



return result;








* MD5


加密








* @param str


内容















* @param charset


编码


方式





* @throws Exception








*/



















@SuppressWarnings(


private String MD5(String str


, String charset) throws Exception {






MessageDigest md = tance(






(str


.getBytes(charset));






byte[] result = ();






StringBuffer sb = new StringBuffer(32);






for (int i = 0; i < i++) {










int val = result[i] & 0xff;










if (val <= 0xf) {














(










}










(Integer


.toHexString(val));






}






return ng().toLowerCase();


}



/**







* base64


编码








* @param str


内容















* @param charset


编码


方式





* @throws UnsupportedEncodingException








*/














private String base64(String str


, String charset) throws UnsupportedEncodingException{




}



@SuppressWarnings(


private String urlEncoder(String str


, String charset) throws UnsupportedEncodingException{




}



/**


String result = URLEncoder


.encode(str


, charset);


return result;


String encoded = (str


.getBytes(charset));


return encoded;












*




Si gn



名生成








* @param content


内容











* @param keyValue Appkey









* @param charset


编码


方式






* @throws UnsupportedEncodingException ,Exception



* @return DataSign










*/




@SuppressWarnings(


private


String


encrypt


(String


content,


String


keyValue,


String


charset)


throws


UnsupportedEncodingException, Exception











{







}




/**


if (keyValue != null)


{



}


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


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







*


向指定



URL



POST


方法的















* @param url





求的



URL











* @param params



求的参数集合













* @return

< p>




源的响

< p>
应结









*/




@SuppressWarnings(


private String sendPost(String url, Map params) {










OutputStreamWriter out = null;










BufferedReader in = null;


















StringBuilder result = new StringBuilder();











try {














URL realUrl = new URL(url);














HttpURLConnection conn =(HttpURLConnection) nnection();














//




POST



求必


须设


置如下两行















utput(true);














nput(true);














// POST


方法















uestMethod(














//



置通用的



求属性














uestProperty(


,














uestProperty(


,














uestProperty(


,



































uestProperty(


,














t();














//




URLConnection




对应




出流















out = new OutputStreamWriter(putStream(),














//





求参数



























if (params != null) {




































StringBuilder param = new StringBuilder();













for ( entry : et()) {



































































if(()>0){





(







}













(());




(




(ue());

















n(()+












}












n(












(ng());














}














// flush



出流的

















();














//




BufferedReader< /p>



入流来



取< /p>


URL


的响
















in = new BufferedReader(






















new InputStreamReader(utStream(),














String line;














while ((line = ne()) != null) {


















(line);














}










} catch (Exception e) {


























tackTrace();










}










//< /p>


使用


finally


< br>来关


闭输


出流、



入流











finally{

-


-


-


-


-


-


-


-



本文更新与2021-02-02 08:08,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/598224.html

京东电子面单模板及接口对接方法的相关文章