物流を識別する単一の数は、情報のクエリインターフェースAPI(PHPバージョン)を追跡鳥発現

この記事では、物流は鳥についての情報は、クエリインターフェイスAPIを識別するために、単一の数値を表す追跡について説明し、誰もが共有するために、今、参照のための友人の必要性がある、一定の基準値を持っています

背景:

プロジェクト開発、いくつかの需要は必然的に宅配便でのいくつかのAPIインターフェイスを使用します。この部分は、クエリアピExpressおよびその他の様々な違いを説明。

エクスプレス鳥類、新人、速達会社、等:一般エクスプレスAPIインターフェイスを提供するために使用

我々はいくつかのAPIインターフェイスを使用してきたように、あなたは、いくつかの2000回/日、口座番号またはキーの通話用のAPIインタフェースが制限されている日を適用していることがわかります、いくつかの5000回/秒、あなたがトラブルを感じる唯一のものそれは、ユーザーが鳥がチェーンを表現追加する必要はありませんが、チェーンを追加するために、ユーザが必要となります。使用すると、余分な料金で、ポータルのないユーザーの場合、非常に厳しい以外の何ものでもありません。

エクスプレス鳥は、APIインタフェースは、ヨーヨー、永久に無料の数に制限はありませんリクエストであります

もちろん、そのために少し需要を、いくつかのインターフェイスは、あなたのニーズを満たすことができますが、あなたが照会サービスを停止する必要があり、要求が何回も1日の場合には、製品の経験に影響を与えるので、それはあなたが直接することをお勧めしますワンステップで宅配便の鳥の使用。

シナリオ

 

 

需要を達成することができます

  1. アプリは直接統合された急行物流情報照会APIインタフェースを実装します

  2. エクスプレス宅配APIクエリインターフェース、自動クエリ機能に応じて、マイクロチャネルパブリック番号、ユーザによって入力された順番に基づいて番号、我々の注文番号や鳥の識別の背景に

主なアプリケーション

ドッキング準備
1. ログイン速い宅配鳥はアカウント登録
、2。のGetデベロッパーアカウント情報(ID、APIキーを)宅配便の鳥の背景を参照するには、ログインし
ます。3.技術FBI、および試運転を完了し、物流クエリAPIアドレスHTTP:// www.kdniao.com/api-track
4.お使いのソフトウェアに急行物流クエリインターフェイスを統合しました

あなたの情報によると、完全に満たされるためには、申請書を提出します。

ログインに成功したら、キーIDやその他の情報を見ることができ、これらの情報の要求は、他のインタフェースAPIを照会することができます

技術的なドッキング
Expressがサポート418は、主要な国内および国際宅配便サービス企業単一のクエリ、タイムリーな情報、データの整合性をカバーし、物流のクエリを表現する、宅配便の鳥問合せインタフェースを提供します。

ログイン宅配鳥の公式ウェブサイトはそうでJAVA、C#の、PHPやなどの開発言語ドッキング、さまざまなをサポートしています。開発言語によって、一例として、以下のPHPコードに対応する参照コードのサンプルを選択します。

<?PHP
 // 電気の供給者のID 
定義された(「EBusinessID」)またはDEFINE(「EBusinessID」、「123456」);
 // 電気・プロバイダー秘密鍵暗号、宅配便の鳥を提供し、漏れない世話を
定義した(「のAppKeyを」)またはDEFINE( 'のAppKey'、 '1234567890' );
 // リクエストURL:試験アドレス
//定義( 'reqURL')または定義( 'reqURL'、「http://sandboxapi.kdniao.cc:8080/kdniaosandbox/gateway/ exterfaceInvoke.json '); 
//リクエストURL:公式アドレス
定義された(' reqURL ')またはDEFINE(' reqURL '' http://api.kdniao.cc/Ebusiness/EbusinessOrderHandle.aspx " ); 

$ KGS =「JD 「;// 宅配会社は、公式文書がある、と呼ば
$ナンバー =「12345678」; //エクスプレス注文は

お問い合わせ物流軌道を呼び出す// 
// --------------------------------------- ------ 
$ logisticResult = getOrderTracesByJson($ KGS$番号);
 エコー $ logisticResult ; 

// 解析データ
$データ json_decode(の= $ logisticResult真の); 


IF$データ [ '成功'] == trueに) { // 成功に関する情報を返す
    の$ STR "" = ; 

IFISSET$データ [ 'トレース'])&&!$データ [ 'トレース' {)])
     のために$ I = 0; $ Iは < COUNT$データ)[ 'トレース']; $ I ++ ){
         $ STR = "時間:." $データ [ 'トレース'] $ I 'AcceptTime' [] ..] "<BR/>アドレス:" $データ [ '痕跡'] [ $ I ] [ 'AcceptStation'] "" ; 
    } 
} 
エコー "あなたのクエリは、単一の番号:.ある" $データ [ 'LogisticCode'] " 
ストリーム情報:。" $ STRを "" ;
} // --------------------------------------------- / * * 
 * JSON方法問い合わせオーダ物流軌道* /


 

 
関数 getOrderTracesByJson($ KGS$番号){ 

    $ requestData = "{ 'OrderCode': ''、 'ShipperCode': ' $ KGS '、 'LogisticCode': ' $番号 '}" 
    
    $ DATAS = 配列 'EBusinessID' => EBusinessID、
        'RequestType' => '1002'、
        'RequestData' => でurlencode$ requestData)、
        'データ型' => '2'、 
    )。
    $ DATAS [ 'DataSign'] =暗号化($ requestDataのAppKey)。
    $結果 = sendPost(ReqURL、$ DATAS )。    
    
    //返された情報処理事業...... 
    戻り ます$ result ; 
} 
 
/ * * 
 提出* POSTデータは、
 * @paramの文字列$ urlはURLをリクエスト
 * @param配列データDATASの$の提出
 *の@returnのURL応答がHTMLを返さ
 * / 
関数 sendPost($のURL$ DATAS ){
     $タン = 配列();    
     foreachの$ DATAS  AS  $キー => $値){
         $タン [] =用のsprintf( '%S =%のS'、$キー値$ );         
    }     
    $ post_data =内破(、 '&' $タン);
    $ url_info = でもparse_url$のURL );
    もし$ url_info [ 'ポート' ]))
    { 
        $ url_info [ 'ポート'] = 80 
    } 
    $ httpheader = "POST"。url_info $ [ 'パス']。"HTTP / 1.0 \ r \ n"が$ httpheader。= "ホスト:"。url_info $ [ 'ホスト']。"\ r \ nの" ;
    $ httpheader。= "Content-Typeの:/ x-www-form-urlencodedでの\ r \ nアプリケーション" ;
    $ httpheader=「コンテンツ長:」。strlen関数$ post_data)。"\ r \ nの" ;
    $ httpheader。= "接続:閉じるの\ r \ n \ r \ nの" ;
    $ httpheader。= $ post_data $ FD = fsockopenの$ url_info [ 'ホスト']、$ url_info [ 'ポート' ])。
    fwriteの$ FD$ httpheader )。
    $なります "" = ;
    $ headerFlag = ;
    しばらく(!FEOF$ fdの)){
         場合(($ヘッダー = @ 関数fgets$ FD))&&($ヘッダ == "\ R \ n" || $ヘッダ == "\ n" )){
             破ります
        } 
    } 
    ながら(!FEOF$ fdが)){
         $取得 = のfread$ FD、128 )。
    } 
    FCLOSE$のFD )。  
    
    返す $取得します
} 

/ * * 
 *电商ログイン签名生成
 * @paramデータ内容    
 * @param APPKEY APPKEY 
 * @return DataSign签名
 * / 
機能の暗号化($データ$のAPPKEY ){
     リターン でurlencodeBASE64_ENCODEMD5$データ$のAPPKEY )))。
}

?>

 

おすすめ

転載: www.cnblogs.com/kdn2019/p/11585864.html