最近中文字幕高清中文字幕无,亚洲欧美高清一区二区三区,一本色道无码道dvd在线观看 ,一个人看的www免费高清中文字幕

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

如何按順序進(jìn)行多個(gè) API 調(diào)用

如何按順序進(jìn)行多個(gè) API 調(diào)用

慕妹3242003 2023-09-27 21:22:48
我需要調(diào)用兩個(gè) API A1 和 A2,但不是并行調(diào)用。僅當(dāng) A1 在其 JSON 響應(yīng)中返回某個(gè)標(biāo)志值時(shí),A2 才會被調(diào)用。我知道如何使用 Httpclient 在 java 中進(jìn)行 http 調(diào)用。一種方法是編寫一個(gè)代碼來進(jìn)行第一次調(diào)用并解析其響應(yīng),然后再次使用相同的代碼進(jìn)行另一個(gè)調(diào)用。是否有任何其他智能方法可以為我們自動化此過程,我將傳遞請求和條件第二個(gè)需要像 Rxjava 中那樣調(diào)用下面是 Rxjava 代碼片段(參考:(RxJava 組合請求序列))api1.items(queryParam) .flatMap(itemList -> Observable.fromIterable(itemList))) .flatMap(item -> api2.extendedInfo(item.id())) .subscribe(...)我怎樣才能在Java中完成這個(gè)任務(wù)呢?是否有任何已經(jīng)存在的 Java 功能允許我進(jìn)行多個(gè)順序調(diào)用?我嘗試尋找現(xiàn)有的解決方案,但它們不是用 Java 編寫的。
查看完整描述

1 回答

?
胡說叔叔

TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超8個(gè)贊

您可以用來HttpURLConnection進(jìn)行 API 調(diào)用。


檢查響應(yīng)并相應(yīng)地觸發(fā)另一個(gè)呼叫。


像這樣的東西


public static void main(String[] args) throws IOException {


    String response1 = sendGET("http://url1");

    if(response1 != null && response1.contains("true")){

        String response2 = sendGET("http://url2");

    }


}


private static String sendGET(String url) throws IOException {

    URL obj = new URL(url);

    StringBuffer response = new StringBuffer();

    HttpURLConnection con = (HttpURLConnection) obj.openConnection();

    con.setRequestMethod("GET");

    int responseCode = con.getResponseCode();

    System.out.println("GET Response Code :: " + responseCode);

    if (responseCode == HttpURLConnection.HTTP_OK) { // success

        BufferedReader in = new BufferedReader(new InputStreamReader(

                con.getInputStream()));

        String inputLine;

        while ((inputLine = in.readLine()) != null) {

            response.append(inputLine);

        }

        in.close();


        // print result

        System.out.println(response.toString());

    } else {

        System.out.println("GET request not worked");

    }

    return response.toString();

}


查看完整回答
反對 回復(fù) 2023-09-27
  • 1 回答
  • 0 關(guān)注
  • 125 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號