プラットフォーム テクノロジ - Java SDK の説明


環境の依存関係

  • Java SE/EE 1.5 以降 (Android プラットフォームはサポートされていません)
  • Apache Commons Logging
##使用例

淘宝網の現在のシステム時刻を取得

DefaultTaobaoClient client = new DefaultTaobaoClient("http://gw.api.taobao.com/router/rest", "appkey", "appsecret");
TimeGetRequest request = new TimeGetRequest();
TimeGetResponse response = client.execute(request);
if (response.isSuccess()) {
    System.out.println(response.getBody());
}

単一トランザクションの詳細を取得

DefaultTaobaoClient client = new DefaultTaobaoClient("http://gw.api.taobao.com/router/rest", "appkey", "appsecret");
TradeFullinfoGetRequest req = new TradeFullinfoGetRequest();
req.setFields("tid,type,status,payment,orders");
req.setTid(123456789L);
TradeFullinfoGetResponse rsp = client.execute(req, sessionKey);
System.out.println(rsp.getBody());

リアルタイムのメッセージ通知を聞く

TmcClient client = new TmcClient("app_key", "app_secret", "default");
client.setMessageHandler(new MessageHandler() {  
    public void onMessage(Message message, MessageStatus status) {  
        try {  
            System.out.println(message.getContent());  
            System.out.println(message.getTopic());
        } catch (Exception e) {  
            e.printStackTrace();  
            status.fail();// 消息处理失败回滚,服务端需要重发  
        }  
    }  
});  
client.connect("ws://mc.api.taobao.com/");

バッチAPI 呼び出し

BatchTaobaoClient client = new BatchTaobaoClient("http://gw.api.taobao.com/router/batch", "appkey", "appsecret");
TaobaoBatchRequest batch = new TaobaoBatchRequest();
TimeGetRequest timeRequest = new TimeGetRequest();
AppipGetRequest ipRequest = new AppipGetRequest();
batch.addRequest(timeRequest).addRequest(ipRequest);
TaobaoBatchResponse response = client.execute(batch);
System.out.println(response.getBody());

サービス アドレス

API サービス アドレス

QQ截图20170213154503.png

メッセージ サービス アドレス

QQ截图20170213154526.png

高度な機能

応答文字列をオブジェクトとして解釈しません (この時点では、XxxResponse に含まれるオブジェクトは null)

DefaultTaobaoClient.setNeedEnableParser(false)

単純化された JSON 構造を使用して、冗長な JSON を返し、削除しますノード

DefaultTaobaoClient.setUseSimplifyJson(true)

API呼び出しログ管理をキャンセル

DefaultTaobaoClient.setNeedEnableLogger(false)

HTTPS証明書チェックを無視(テスト環境でのみオンにすることを推奨)


DefaultTaobaoClient.setIgnoreSSLCheck(true)

GZIP圧縮への応答をキャンセル機能 (GZIP 圧縮機能はネットワーク送信を大幅に削減する可能性があるため、キャンセルしないことを強くお勧めします)


DefaultTaobaoClient.setUseGzipEncoding(false)

HTTP 接続タイムアウトと読み取りタイムアウトを設定します (ネットワーク環境が悪い場合は適切に増やすことができます)


// HTTP连接默认超时时间为:3秒
// HTTP响应读默认超时时间为:15秒
DefaultTaobaoClient client = new DefaultTaobaoClient("http://gw.api.taobao.com/router/rest", "appkey", "appsecret", connectTimeout, readTimeout)

API 呼び出し エラーが発生したときに自動的に再試行します (通常、ISP エラーは正常に再試行できます)

AutoRetryTaobaoClient client = new AutoRetryTaobaoClient("http://gw.api.taobao.com/router/rest", "appkey", "appsecret");
client.setMaxRetryCount(3);
client.setRetryWaitTime(100L);
TimeGetRequest request = new TimeGetRequest();
TimeGetResponse response = client.execute(request);
if (response.isSuccess()) {
    System.out.println(response.getBody());
}

API 呼び出しの最も近いルーティング (場所に基づいて呼び出す最も近い TOP コンピューター ルームを選択します) API 呼び出しが開始される場所)

ClusterTaobaoClient client = new ClusterTaobaoClient("http://gw.api.taobao.com/router/rest", "appkey", "appsecret");
TimeGetRequest request = new TimeGetRequest();
TimeGetResponse response = client.execute(request);
System.out.println(response.getBody());

Notes

    TaabaoClient 実装クラスはすべてスレッドセーフであるため、API リクエストごとに新しい TaabaoClient 実装クラスを作成する必要はありません
  • TaobaoClient 実装クラスのインスタンスを作成するときに、format =json を指定すると、xml 形式と比較してデータ送信量が削減され、API リクエストの効率が向上します
FAQ

#このドキュメントに関する FAQ はありません