圆通电子面单接口申请案例(PHP)
admin
2023-06-21 07:42:10
0

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

1.接口描述

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

请求方法的编码格式(utf-8)"application/x-www-form-urlencoded;charset=utf-8"

API地址:http://api.kdniao.cc/Ebusiness/EbusinessOrderHandle.aspx

接口提供:快递鸟

2.请求系统级参数

参数名称

类型

说明

必须要求

RequestData

String

请求内容需进行URL(utf-8)编码。请求内容JSON格式,须和DataType一致。

R

EBusinessID

String

商户ID,请在我的服务页面查看。

R

RequestType

String

请求指令类型:1007

R

DataSign

String

数据内容签名:把(请求内容(未编码)+AppKey)进行MD5加密,然后Base64编码,最后进行URL(utf-8)编码。详细过程请查看Demo。

R

DataType

String

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

O

 

备注:R-必填(Required),O-可选(Optional),C-报文中该参数在一定条件下可选(Conditional

 

3.PHP对接源码

".$jsonParam;
$jsonResult = submitEOrder($jsonParam);
echo "

电子面单提交结果:
".$jsonResult; //解析电子面单返回结果 $result = json_decode($jsonResult, true); echo "

返回码:".$result["ResultCode"]; if($result["ResultCode"] == "100") { echo "
是否成功:".$result["Success"]; } else { echo "
电子面单下单失败"; } //------------------------------------------------------------- /**  * Json方式 查询订单物流轨迹  */ function submitEOrder($requestData){ $datas = array(         'EBusinessID' => EBusinessID,         'RequestType' => '1007',         'RequestData' => urlencode($requestData) ,         'DataType' => '2',     );     $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); if($url_info['port']=='') { $url_info['port']=80; } echo $url_info['port'];     $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'], $url_info['port']);     fwrite($fd, $httpheader);     $gets = ""; $headerFlag = true; while (!feof($fd)) { if (($header = @fgets($fd)) && ($header == "\r\n" || $header == "\n")) { break; } }     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))); } /**************************************************************   *   *  使用特定function对数组中所有元素做处理   *  @param  string  &$array     要处理的字符串   *  @param  string  $function   要执行的函数   *  @return boolean $apply_to_keys_also     是否也应用到key上   *  @access public   *   *************************************************************/   function arrayRecursive(&$array, $function, $apply_to_keys_also = false)   {       static $recursive_counter = 0;       if (++$recursive_counter > 1000) {           die('possible deep recursion attack');       }       foreach ($array as $key => $value) {           if (is_array($value)) {               arrayRecursive($array[$key], $function, $apply_to_keys_also);           } else {               $array[$key] = $function($value);           }               if ($apply_to_keys_also && is_string($key)) {               $new_key = $function($key);               if ($new_key != $key) {                   $array[$new_key] = $array[$key];                   unset($array[$key]);               }           }       }       $recursive_counter--;   }   /**************************************************************   *   *  将数组转换为JSON字符串(兼容中文)   *  @param  array   $array      要转换的数组   *  @return string      转换得到的json字符串   *  @access public   *   *************************************************************/   function JSON($array) {       arrayRecursive($array, 'urlencode', true);       $json = json_encode($array);       return urldecode($json);   }   ?>


上一篇:LNMP之 php解析

下一篇:LNMP之PHP 编译安装

相关内容

热门资讯

双汇致歉 【大河财立方消息】 5月28日,双汇发布致歉声明称,近日,黑龙江省市场监督管理局公示望奎双汇北大荒食...
为了更多生命的春天——河南和塞... 如果说,豫塞两地的临床防治需求是跨国医学合作的前提,那么共建“一带一路”倡议为双方深化医疗科技合作提...
公共服务随人走 在常住地也可享... 随迁子女仅凭居住证入学、高血压等10种慢特病费用跨省直接结算……公共服务随人走 在常住地也可享这些保...
合力奋战二季度丨不沿边不靠海,... 5月26日,记者走进位于鹤壁市鹤山区的鹤壁内陆港(豫煤交易中心鹤壁园区),双层叠放的集装箱阵列格外醒...
法院判了:全体业主赔偿陈女士1... 近日,湖北宜昌长阳土家族自治县人民法院审结一起因高空抛物引起的纠纷。一个从楼上掉下来的矿泉水瓶,砸坏...
爱尔眼科递表港交所!年收入超2... 【大河财立方消息】 5月27日,爱尔眼科医院集团股份有限公司向港交所提交上市申请。据招股书,爱尔眼科...
南部战区新闻发言人就荷兰军舰侵... 南部战区新闻发言人翟士臣就荷兰军舰侵权行为发表谈话。南部战区新闻发言人翟士臣海军大校表示,5月27日...
伊朗称对美国空军基地实施了打击 伊朗塔斯尼姆通讯社5月28日报道,伊朗革命卫队称,为回应阿巴斯港机场附近的袭击事件,已对美国空军基地...
子公司猪肉抗生素超标37.5倍... 5月28日,河南双汇投资发展股份有限公司发布致歉声明:近日,黑龙江省市场监督管理局公示望奎双汇北大荒...
杭州别墅藏代孕窝点,官方通报 今天,浙江省杭州市临平区联合调查处置组发布情况通报。针对群众反映临平区某小区一住宅内有人非法从事试管...