1

スプリングブートアプリケーションを使用してイベントソースサーバーを作成するには? 以下のリンクから、Java-spring ブートの例が表示されません。どんな参考書も役に立ちます。

http://www.html5rocks.com/en/tutorials/eventsource/basics/

4

2 に答える 2

0

@codependent のソリューションから書き直して、必要に応じて以下のコードを試しました。その応答。ただし、ブラウザのタブを閉じたときに接続を終了することはありません。サーバー側で実行し続けます。ここで HTTP GET と何か関係がありますか?

@RequestMapping(value = "/getNotificationCount/{userId}",method = RequestMethod.GET)
    public SseEmitter getNotificationCount(@PathVariable("userId") String userId, HttpServletResponse response){
        SseEmitter emitter = null;
        try {
            emitter = new SseEmitter();

            while(true) {
                try{
                    int count= myService.getNotificationCount(Integer.parseInt(userId));
                    emitter.send(count);
                    Thread.sleep(30 *   // minutes to sleep
                                 60 *   // seconds to a minute
                                 1000); // milliseconds to a second

                }catch(ClientAbortException cae){
                    LOGGER.info("ClientAbortException Breaking the notification stream");
                    break;
                }
            }

            //Closes the stream
            emitter.complete();

        } catch (Exception e) {
            //Closes the stream
            emitter.complete();
        }

        return emitter;
    }
于 2016-09-20T14:06:27.097 に答える