単一のアプリケーション・プロセスをプロビジョニング電子アカウントのタクト面(バードエクスプレス例)

 

電子単一面で:

5.3.1は、あなたがそれ以外の場合は、要求を失敗し、プロンプトが返されます、メンバーシップサービスに加入し、実名認証要求前のインターフェースを必要とする「のインターフェイスに加入していませんでした」。

5.3.2 、インタフェースの開発をダウンロードする必要があるExpressの鳥はテクニカルドキュメントのインターフェース」、「2018鳥Expressインタフェースのサポートは、コード化されたリストの.xlsxエクスプレス」、「エクスプレスE-鳥は、単一の顧客番号パラメータテーブルに直面し、」「ビジネスの宅配会社の種類を表現します」ビュー、技術文書のセクション3.2を参照して、電子単一の平面、;

5.3.3 、鳥は公式サイトをエクスプレス -文書「をダウンロード助ける単一の電子側のデモ参照は(.NET、JavaのデモPHPのみ3つの言語を提供します)です」;他の言語発達のユーザーが開発した技術文書をダウンロードする必要があります。

5.3.4、電子インターフェースの使用はまた、(単一の電子表面単一のアカウントに直面する必要があります注意:別の顔を、すべて単一の電子宅配便会社は、アカウントのフィールドを転送する必要がある、を参照してください鳥は、単一電子の顧客数のパラメータテーブルに直面して表現します」);

       5.3.4.1テスト環境:あなたがテストアカウントExpressは、宅配便の公式サイトで鳥を鳥を提供しています使用する必要があります - 「ドキュメントをダウンロード役立つExpressの鳥が単一の電子顧客番号パラメータテーブルに直面している電子に加えて、アカウントインタフェース要求と対応するフィールド名を表示します」表面単一のインターフェースのテスト環境は、宅配会社によって維持され、宅配便会社は、多くの場合、不安定性を調整しても、テスト環境につながるのような、利用できません:シェントン、宅配、セキュリティがすることができます。フォーマルな環境では、通常使用することができます。テスト環境は、転送インタフェースを介してユーザにのみ利用可能であり、配送会社のサポートロジックを発現するそれぞれ同じ鳥類、宅配会社の説明を通して測定は、インターフェースを介して転送されてきました

 5.3.4.2、正式な環境:

直接電子注文を単一のアカウントに直面することなく²:

SF、 EMS(広東省は、国が発行した)、宅配、郵便速達小包、中国鉄道エクスプレス、中国のポスト標準、高速、宅配便のすべて。

²オンラインアプリケーションのアカウント(宅配便の鳥の背景の公式サイト):

優れたスピード、韻、タクト、限りエクスプレス、セキュリティができ、BES;

(アプリケーションパス:鳥エクスプレス公式サイト -電子シングル顔-私の宅配会社-新宅配会社のために適用されます)。

²他の宅配会社は、あなたが使用することができますローカル宅配ネットワーク回線でアカウント(既存の注文番号)を申請する必要があります。

 

電子側単一のバッチ印刷:

5.3.5 、鳥は公式サイトをエクスプレス -文書「をダウンロード役立つ電子単一のバッチ印刷面のデモ参照があるの」(.NET、JavaのデモPHPのみ3つの言語を提供します)、他の言語発達のユーザーが開発した技術文書をダウンロードする必要があります;

5.3.6ドッキングノート

5.3.6.1、確実にその電力サプライヤにインタフェース ID、キー(のAppKey)とユーザ管理背景マーチャントID、全く同じキー。

5.3.6.2、 OrderCodeは、正式な環境表面鳥電子注文番号を表現する単一単一単一のインターフェースでなければならない。PortNameは、プリンタ名で、ローカルでなければなりません

同じプリンタ名。

5.3.6.3は、インターフェースのことを確認してください GetIpでデモ()メソッドは、ユーザーがIPとに接続するために取得するには、プリンタ、コンピュータの一貫性のあるIP(Baiduの検索IP138)。

5.3.7 、エクスプレス鳥のプリントコントロールのインストール C-Lodop(印刷)

インストール 1は、宅配便の鳥バッチ印刷デモをダウンロードするように求められます呼び出します。

インストール 2、ダウンロードするには宅配便の公式サイトでは鳥、ダウンロードアドレス:http://www.kdniao.com/product-eorder-specific

 デモ例:

システム使用; 
使用System.Collections.Generic; 
使用System.IO; 
System.Linqのを使用して、
使用System.Net; 
使用System.Textの、
System.Webのを使用して、

名前空間KdGoldAPI 
{ 
    / ** 
    * 
    *鳥電子配信側シングルインタフェース
    * 
* @技術のQQ 
    * @技術のQQグループ
    * @see http://www.kdniao.com/MiandanAPI.aspx 
    * @copyright:深セン市エクスプレス金・データ・サービスには限り
    * 
    *キーIDと公式サイトのアプリケーションにアクセスしてください:HTTP ://www.kdniao.com/ServiceApply.aspx 
    * / 
    パブリック クラスKdApiEOrderDemo 
    { 
        // 電気の供給者ID 
        プライベート文字列EBusinessID =「宅配便の鳥は、公式サイトのアプリケーションにhttp://www.kdniao.com/ServiceApply.aspxを行く」;
         // 電気・プロバイダー秘密鍵暗号、宅配便の鳥を提供するには、漏れない世話を
        プライベート文字列のAppKey =「クーリエ行きます鳥公式サイトのアプリケーションhttp://www.kdniao.com/ServiceApply.aspx " ;
         // リクエストされたURL、正式な環境住所:http://api.kdniao.cc/api/Eorderservice 
        プライベート文字列reqURL =" HTTP:// TestAPIを.kdniao.cc:8081 / API / EOrderService " ; 

        // / <まとめ> 
        // 電子の/ JSON単一面
        // / </要約> 
        // / <戻り値> </戻り> 
        パブリックストリングorderTracesSubByJson()
        { 
            文字列requestData =「{ 'OrderCode': '012657700312' 、」+
                                  " 'ShipperCode': 'YTO'、" + 
                                  " 'PayType' :. 1、" + 
                                  " 'ExpType' :. 1、" + 
                                  " 'コスト':1.0、" + 
                                  " 'OtherCost':1.0、" + 
                                  」「送信者': "+ 
                                  " { "+ 
                                  "'会社':' LV ''名前':'テイラー''モバイル':' 1xxxxxxxxxx '' provinceName ':'上海'' CityName ':'上海'' ExpAreaName「:」青浦エリア「」住所: 『パール号線73』} "+ 
                                  " 'レシーバー':" + 
                                  "{" ++ 
                                  「 '会社': 'GCCUI'、 '名前': 'ヤン'、 '携帯電話': '1xxxxxxxxxx'、 'provinceName': '北京'、 'CityName': '北京'、 'ExpAreaName': '朝陽' 、「アドレス」:「三里屯通り雅英建物」}、「+
                                  " '商品':" + 
                                  "[{" + 
                                  " 'GoodsName': '鞋子'、 'Goodsquantity':1、 'GoodsWeight':1.0}]、" + 
                                  " 'にaddService':" + 
                                  "[{" + 
                                  " '名前': 'COD'、 '値': '1020'}]、」+ 
                                  " '重':1.0、" + 
                                  " '数量':1、" +(); 
                                  " 'ボリューム':0.0、" +
                                  " '備考': '小心轻放'、" + 
                                  " 'IsReturnPrintTemplate':1}" 

            辞書 <文字列、文字列>のparam = 新しい辞書<文字列、文字列>HttpUtility.UrlEncode(dataSign、Encoding.UTF8))。
            param.Add( "RequestData" 、HttpUtility.UrlEncode(requestData、Encoding.UTF8)); 
            param.Add( "EBusinessID" 、EBusinessID)。
            param.Add( "RequestType"、 "1007" ); 
            ストリングdataSign =暗号化(requestData、のAppKey、 "UTF-8" )。
            param.Add( "DataSign" 、HttpUtility.UrlEncode(dataSign、Encoding.UTF8)); 
            param.Add( "データ型"、 "2" )。

            文字列結果 = sendPost(ReqURL、PARAM)。

            // 根据公司业务处理返回的信息...... 

            リターン結果;

        
        // /ポスト実施形態では、データを提出し、ページのソースコードに戻り
        // / </要約> 
        @ /ます。<param name = "URL"> URLリクエストを送信する</ param>の
        @ /ます。<param name = "PARAM">パラメータの要求セット</ param>の
        // リモートリソース</戻り値>の結果に応じて、/ <戻り値> 
        プライベート文字列sendPost(文字列URL、辞書<文字列、文字列> のparam)
        { 
            文字列の結果 =「」; 
            StringBuilderのPOSTDATA = 新しい新しいもしStringBuilder();
            もし(!PARAM = NULL && param.Count> 0 
            { 
                foreachの(パラメータでのvar P)
                {
                    (postData.Length> 0 
                    { 
                        postData.Append( "&" )。
                    } 
                    postData.Append(p.Key)。
                    postData.Append( "=" )。
                    postData.Append(p.Value)。
                } 
            } 
            バイト [] byteData = Encoding.GetEncoding( "UTF-8" ).GetBytes(postData.ToString())。
            試す
            { 

                HttpWebRequestの要求 = (HttpWebRequestの)WebRequest.Create(URL)。
                request.ContentType = "アプリケーション/ x-www-form-urlencodedで"
                request.Referer = URL; 
                request.Accept = "* / *" ; 
                request.Timeout = 30×1000 ; 
                request.UserAgent = "(互換; MSIE 6.0; Windows NTの5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)はMozilla / 4.0" ; 
                request.Method = "POST" ;
                request.ContentLength = byteData.Length。
                ストリームstream = request.GetRequestStream()。
                stream.Write(byteData、 0 、byteData.Length)。
                stream.Flush(); 
                stream.Close(); 
                HttpWebResponseの応答 sr.ReadToEnd()。 = (HttpWebResponseの)request.GetResponse(); 
                ストリームbackStream = response.GetResponseStream()。
                StreamReaderをSR = 新しい StreamReaderを(backStream、Encoding.GetEncoding( "UTF-8" )); 
                結果 = 
                sr.Close()。
                backStream.Close(); 
                response.Close(); 
                request.Abort(); 
            } 
            キャッチ(例外例)
            { 
                結果 = ex.Message。
            } 
            戻り値の結果; 
        } 

        // / <概要> 
        // /电商サイン签名
        // / </要約> 
        // /ます。<param name = "コンテンツ">内容</ param>の
        // / <PARAM NAME = "keyValueの"> APPKEY < / param>の
        // / <PARAM NAME = "文字セット"> URL编码</ param>の
        // / <リターン> DataSign签名</リターン> 
        プライベート文字列の暗号化(文字列の内容、文字列keyValueの、文字列の文字セットを)
        { 
            場合(keyValueの! = NULL 
            { 
                戻り BASE64(MD5(コンテンツ+ keyValueの、文字セット)、文字セット)。
            Base64で(MD5(コンテンツ、文字セット)、文字セット); 
        } 

        // / <概要> 
        // / MD5暗号化文字列
        // / </要約> 
        // /ます。<param name = "STR">暗号化された文字列< / param>の
        // / <PARAM NAME = "文字セット"> </ param>のコーディング
        // / <戻り値>暗号文</戻り値> 
        プライベート文字列MD5(STR文字列、文字列の文字セット)
        { 
            バイト []バッファ=System.Text.Encoding.GetEncoding(文字セット).GetBytes(STR)。
            試す
            { 
                System.Security.Cryptography.MD5CryptoServiceProviderチェックを。
                チェック = 新しいSystem.Security.Cryptography.MD5CryptoServiceProviderを();
                バイト []ソンム= check.ComputeHash(バッファ)
                文字列RET = "" ; 
                foreachの(バイトソンムにおけるA)
                { 
                    場合(<16 
                        RET + = "0" + a.ToString( "X" )。
                    他の
                        RET + = a.ToString( "X" ); 
                } 
                を返す)(ret.ToLowerします。
            } 
            キャッチ
            { 
                投げます
            } 
        } 

        // / <概要> 
        // / BASE64编码
        // / </要約> 
        // / <PARAM NAME = "STR">内容</ PARAM> 
        // / <PARAM NAME = "文字セット">编码方式< / param>の
        // / <リターン> </戻り> 
        プライベート文字列BASE64(文字列str、文字列の文字セット)
        { 
            戻りConvert.ToBase64String(System.Text.Encoding.GetEncoding(文字セット).GetBytes(STR))。

 

おすすめ

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