V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
rqxiao
V2EX  ›  Java

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

  •  
  •   rqxiao · Nov 11, 2020 · 3881 views
    This topic created in 1997 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
        1
    JQD6r41PkI4o2mEz  
       Nov 11, 2020
    webflex 了解下
    Oktfolio
        2
    Oktfolio  
       Nov 11, 2020
    DeferredResult
    rqxiao
        3
    rqxiao  
    OP
       Nov 11, 2020
    我这边应该是客户端 ,对方是服务端
    LLaMA2
        4
    LLaMA2  
       Nov 11, 2020   ❤️ 1
    ()->{
    while(true) {
    try{
    String respone = http.setTimeout(120*1000).AsyncRequest(URI);
    // parse response...............
    Sleep(1*1000);
    } catch(Exception e) {

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