rqxiao
V2EX  ›  Java

求教 Java 中 http 长轮询机制怎么实现

  •  
  •   rqxiao · Nov 11, 2020 · 4319 views
    This topic created in 2188 days ago, the information mentioned may be changed or developed.

    第三方接口已经提供基于 Http 的轮询接口给应用反馈 xx 是否被消费

    应用必须在独立的线程发起 Http 请求,一般会 hang 住,

    当有新的消息,应用就该接受。

    应用必须确保请求不中断,当成功获得消息或者因为任何原因中断连接,应用必须立即恢复轮询。

    后台应用是 springboot 请问这个长轮询不中断请求 java 里有什么实现?

    7 replies  •  2020-11-12 11:05:41 +08:00
    JQD6r41PkI4o2mEz
    JQD6r41PkI4o2mEz
    Nov 11, 2020
    1
    webflex 了解下
    Oktfolio
    Oktfolio
    Nov 11, 2020
    2
    DeferredResult
    rqxiao
    rqxiao
    OP
    Nov 11, 2020
    3
    我这边应该是客户端 ,对方是服务端
    LLaMA2
    LLaMA2
    Nov 11, 2020❤️1
    4
    ()->{
    while(true) {
    try{
    String respone = http.setTimeout(120*1000).AsyncRequest(URI);
    // parse response...............
    Sleep(1*1000);
    } catch(Exception e) {

    }
    }
    }
    monkeyWie
    monkeyWie
    Nov 11, 2020❤️1
    5
    一个死循环就行了吧
    KarmaWu
    KarmaWu
    Nov 11, 2020
    6
    推荐使用 WebSocket
    rqxiao
    rqxiao
    OP
    Nov 12, 2020
    7
    死循环的确是办法
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1515 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 14:56 · PVG 22:56 · LAX 06:56 · JFK 09:56
    ♥ Do have faith in what you're doing.