
<?php |
//电商ID |
defined('EBusinessID') or define('EBusinessID', 1237100); |
//电商加密私钥,快递鸟提供,注意保管,不要泄漏 |
defined('AppKey') or define('AppKey', '518a73d8-1f7f-441a-b644-33e77b49d846'); |
//请求url |
defined('ReqURL') or define('ReqURL', 'http://api.kdniao.cc/Ebusiness/EbusinessOrderHandle.aspx'); |
/** |
* Json方式 在线下单 |
*/ |
function orderOnlineByJson(){ |
$requestData="{'LogisticsWeight':2.0,". |
"'LogisticsVol':2.0,". |
"'HQPOrderDesc':'尽快上门收件,PHP demo测试',". |
"'HQPPayType':1,". |
"'IsNeedPay':2,". |
"'Payment':121.0,". |
"'OrderCode':'test_12345674',". |
"'StartDate':'2015-05-13 21:20:53',". |
"'EndDate':'2015-05-14 21:20:53',". |
"'ShipperCode':'LB',". |
"'LogisticCode':'109932607391',". |
"'ToCompany':'华为科技',". |
"'ToName':'张三',". |
"'ToAddressArea':'深圳市南山区桂庙路555号',". |
"'ToTel':'',". |
"'ToMobile':'13800000000',". |
"'OrderType':2,". |
"'ToPostCode':'518128',". |
"'ToProvinceID':'广东省',". |
"'ToCityID':'深圳市',". |
"'ToExpAreaID':'南山区',". |
"'FromCompany':'小米科技',". |
"'FromName':'李四',". |
"'FromAddressArea':'深圳市福田区华强北路222号',". |
"'FromTel':'88888888',". |
"'FromMobile':'',". |
"'FromPostCode':'529800',". |
"'FromProvinceID':'广东省',". |
"'FromCityID':'深圳市',". |
"'FromExpAreaID':'福田区',". |
"'Cost':21.0,". |
"'OtherCost':2.0,". |
"'Commoditys':". |
"[{". |
"'Goodsquantity':12,". |
"'GoodsName':'手机屏幕',". |
"'GoodsCode':'kjyhu878787',". |
"'GoodsPrice':121.0". |
"}]}"; |
$datas = array( |
'EBusinessID' => EBusinessID, |
'RequestType' => '1001', |
'RequestData' => urlencode($requestData) , |
'DataType' => '2', |
); |
$datas['DataSign'] = encrypt($requestData, AppKey); |
$result=sendPost(ReqURL, $datas); |
|
//根据公司业务处理返回的信息...... |
|
return $result; |
} |
/** |
* XML方式 在线下单 |
*/ |
function orderOnlineByXml(){ |
$requestData= "<?xml version=\"1.0\" encoding=\"utf-8\" ?>". |
"<Content>". |
"<LogisticsWeight>1.5</LogisticsWeight>". |
"<OrderCode>test_123456</OrderCode>". |
"<LogisticsVol>0.5</LogisticsVol>". |
"<HQPOrderDesc>测试在线下单接口 20150510</HQPOrderDesc>". |
"<HQPPayType>1</HQPPayType>". |
"<IsNeedPay>1</IsNeedPay>". |
"<Payment>1000</Payment>". |
"<OrderType>1</OrderType>". |
"<StartDate>2015-05-10 19:36:50</StartDate>". |
"<EndDate>2015-05-11 19:36:50</EndDate>". |
"<ShipperCode>LB</ShipperCode>". |
"<LogisticCode></LogisticCode>". |
"<ToName>张三</ToName>". |
"<ToAddressArea>深圳市南山区南新路2055号</ToAddressArea>". |
"<ToTel></ToTel>". |
"<ToMobile>13800000000</ToMobile>". |
"<ToPostCode></ToPostCode>". |
"<ToProvinceID>广东省</ToProvinceID>". |
"<ToCityID>深圳市</ToCityID>". |
"<ToExpAreaID>南山区</ToExpAreaID>". |
"<FromCompany>快递鸟科技</FromCompany>". |
"<FromName>李四</FromName>". |
"<FromAddressArea>深圳市福田区华强北路211号</FromAddressArea>". |
"<FromTel></FromTel>". |
"<FromMobile>13888888888</FromMobile>". |
"<FromPostCode></FromPostCode>". |
"<FromProvinceID>广东省</FromProvinceID>". |
"<FromCityID>深圳市</FromCityID>". |
"<FromExpAreaID>福田区</FromExpAreaID>". |
"<Cost>12</Cost>". |
"<OtherCost>1</OtherCost>". |
"<Commoditys>". |
"<Commodity>". |
"<GoodsName>惠普显示器</GoodsName>". |
"<GoodsCode>ABCD_123456789</GoodsCode>". |
"<Goodsquantity>2</Goodsquantity>". |
"<GoodsPrice>850</GoodsPrice>". |
"</Commodity>". |
"<Commodity>". |
"<GoodsName>神州笔记本</GoodsName>". |
"<GoodsCode>QWERT_456456</GoodsCode>". |
"<Goodsquantity>2</Goodsquantity>". |
"<GoodsPrice>4200</GoodsPrice>". |
"</Commodity>". |
"</Commoditys>". |
"</Content>"; |
$datas = array( |
'EBusinessID' => EBusinessID, |
'RequestType' => '1001', |
'RequestData' => urlencode($requestData) , |
'DataType' => '1', |
); |
$datas['DataSign'] = encrypt($requestData, AppKey); |
$result=sendPost(ReqURL, $datas); |
|
//根据公司业务处理返回的信息...... |
|
return $result; |
} |
/** |
* post提交数据 |
* @param string $url 请求Url |
* @param array $datas 提交的数据 |
* @return url响应返回的html |
*/ |
function sendPost($url, $datas) { |
$temps = array(); |
foreach ($datas as $key => $value) { |
$temps[] = sprintf('%s=%s', $key, $value); |
} |
$post_data = implode('&', $temps); |
$url_info = parse_url($url); |
$httpheader = "POST " . $url_info['path'] . " HTTP/1.0\r\n"; |
$httpheader.= "Host:" . $url_info['host'] . "\r\n"; |
$httpheader.= "Content-Type:application/x-www-form-urlencoded\r\n"; |
$httpheader.= "Content-Length:" . strlen($post_data) . "\r\n"; |
$httpheader.= "Connection:close\r\n\r\n"; |
$httpheader.= $post_data; |
$fd = fsockopen($url_info['host'], 80); |
fwrite($fd, $httpheader); |
$gets = ""; |
while (!feof($fd)) { |
$gets.= fread($fd, 128); |
} |
fclose($fd); |
|
return $gets; |
} |
/** |
* 电商Sign签名生成 |
* @param data 内容 |
* @param appkey Appkey |
* @return DataSign签名 |
*/ |
function encrypt($data, $appkey) { |
return urlencode(base64_encode(md5($data.$appkey))); |
} |
?> |




by: 发表于:2017-10-27 09:35:08 顶(0) | 踩(0) 回复
??
回复评论