본문 바로가기

Programming!

Kotlin-Webflux 의 Client

Kotlin + Webflux를 이용해서 스터디를 하는중에 Flux데이터를 Interval을 줘서 반환할 경우 기존 Client에서는 어떻게 받을 것인가를 고민중에 있었다.


예로 아래와 같이 반환될 경우...


Router

@Bean

    fun routeFunctionPlayStream(handler: GameHandler) : RouterFunction<ServerResponse> = router {

        ("/").nest {

            GET("/reactive/play-stream", handler::playInterval)

        }

    }


Handler

fun playInterval(req: ServerRequest): Mono<ServerResponse>{

...

    return   ServerResponse.ok().bodyToServerSentEvents(streamWiners)

}



일반적인 JQuery의 Ajax는 당연히 받지 못한다.


흠.. 

현재까지 찾아본 방식은 요로코롬 해보는 것이 맞을 듯 하다.


https://golb.hplar.ch/2017/03/Server-Sent-Events-with-Spring.html


뭐..해보고 안되면 다른걸 찾아 보자.