この記事では、主に Express Bird Query API インターフェース (PHP バージョン) の使用方法を紹介します。必要な友人に共有します。
Express 100Express Bird
、永久に無料です
もちろん、小規模なニーズであれば、Express 100 と Aicha Express がニーズを満たすことができますが、リクエストが多すぎる場合は、ある日、クエリ サービスが停止し、製品エクスペリエンスに影響が出る可能性があるため、Express Bird を直接使用して 1 ステップで正しく処理することをお勧めします。 アプリケーションシナリオ
注文の物流情報をクエリ
達成可能なニーズ
アプリはエクスプレス物流情報クエリAPIインターフェイスを実装するために直接統合されています
WeChatパブリックアカウントでは、ユーザーに従って注文番号を入力すると、バックエンドが注文番号を識別し、Express Birdに従ってExpress APIインターフェイスにクエリを実行して、自動クエリ機能を実現します。
パラメータ名 | タイプ | 必須 | 説明 |
---|---|---|---|
RequestData | String | R | リクエストの内容、JSON または XML 形式は、DataType |
EBusinessID | String | R | User ID |
RequestType | String と一致している必要があります | R | リクエストコマンドタイプ:1002 |
datasign | string | dataコンテンツ署名XML 形式です | |
パラメータ名 | タイプ |
OrderCode | varchar(50) | O | 注文番号 |
---|---|---|---|
varchar(10) | R | Express会社コード | |
varchar(50) | R | 物流注文番号 |
パラメータ名 | タイプ | 必須 | 説明 |
---|---|---|---|
EBusinessID | Int | R | EコマースユーザーID |
注文コード | Varchar( 50 ) | O | 注文番号 |
配送業者コード | varchar(10) | R | エクスプレス会社コード |
ロジスティックコード | Varchar(50) | R | 物流運送状番号 |
成功 | Bool | R | 成功かどうか |
理由 | Varchar(50) | O | 失敗の理由 |
State | Int | R | 物流ステータス 1: ピッキング済みアイテム 2: 途中 3: 受け取りのサイン |
トレース | Varchar(Max) | R | 物流トラックの詳細 |
物流トラックの詳細
パラメータ名 | タイプ | 必須 | 説明 |
---|---|---|---|
AcceptTime | DateTime | R | Time |
AcceptStation | Varchar(50) | R | 説明 |
備考 | Varchar(150) | O | 備考 |
{ "OrderCode" : "", "ShipperCode" : "SF", "LogisticCode" : "118650888018"}
{ "EBusinessID" : "1109259", "OrderCode" : "", "ShipperCode" : "SF", "LogisticCode" : "118461988807", "Success" : true, "State" : 3, "Reason" : null, "traces" : [{ "AcceptTime" : "2014/06/25 08:05:37", "AcceptStation" : "正在派件..(派件人:邓裕富,电话:18718866310)[深圳 市]", "Remark" : null }, { "AcceptTime" : "2014/06/25 04:01:28", "AcceptStation" : "快件在 深圳集散中心 ,准备送往下一站 深圳 [深圳市]", "Remark" : null }, { "AcceptTime" : "2014/06/25 01:41:06", "AcceptStation" : "快件在 深圳集散中心 [深圳市]", "Remark" : null }, { "AcceptTime" : "2014/06/24 20:18:58", "AcceptStation" : "已收件[深圳市]", "Remark" : null }, { "AcceptTime" : "2014/06/24 20:55:28", "AcceptStation" : "快件在 深圳 ,准备送往下一站 深圳集散中心 [深圳市]", "Remark" : null }, { "AcceptTime" : "2014/06/25 10:23:03", "AcceptStation" : "派件已签收[深圳市]", "Remark" : null }, { "AcceptTime" : "2014/06/25 10:23:03", "AcceptStation" : "签收人是:已签收[深圳市]", "Remark" : null } ]}
PHP開発言語を例として展開
<?php //电商ID defined('EBusinessID') or define('EBusinessID', '请到快递鸟官网申请http://kdniao.com/reg'); //电商加密私钥,快递鸟提供,注意保管,不要泄漏 defined('AppKey') or define('AppKey', '请到快递鸟官网申请http://kdniao.com/reg'); //请求url defined('ReqURL') or define('ReqURL', 'http://api.kdniao.cc/Ebusiness/EbusinessOrderHandle.aspx'); //调用查询物流轨迹 //--------------------------------------------- $logisticResult=getOrderTracesByJson(); echo logisticResult; //--------------------------------------------- /** * Json方式 查询订单物流轨迹 */ function getOrderTracesByJson(){ $requestData= "{'OrderCode':'','ShipperCode':'YTO','LogisticCode':'12345678'}"; $datas = array( 'EBusinessID' => EBusinessID, 'RequestType' => '1002', '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(empty($url_info['port'])) { $url_info['port']=80; } $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))); } ?>
他のAPIインターフェースについては、 Express Bird にアクセスしてください。詳細については、関連ドキュメントを参照してください。
あなたの製品をExpressインターフェースにドッキングまたは統合する必要がある場合は、Express Birdが良い選択です。問い合わせの数に制限はありません。そしてそれはいつでも無料です。
以上がExpress Bird クエリ API インターフェイスの使用法 (PHP バージョン)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。