<?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) 回复
??
回复评论