Add websocket-authentication sample

This commit is contained in:
rstoyanchev
2024-05-23 16:44:22 +01:00
parent aae7d8fe59
commit e0da3247fe
20 changed files with 750 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
package com.example.greeting;
import java.time.Duration;
import reactor.core.publisher.Flux;
import org.springframework.graphql.data.method.annotation.QueryMapping;
import org.springframework.graphql.data.method.annotation.SubscriptionMapping;
import org.springframework.security.core.Authentication;
import org.springframework.stereotype.Controller;
@Controller
public class GreetingController {
@QueryMapping
String greeting(Authentication authentication) {
return "Hello " + authentication.getName() + "!";
}
@SubscriptionMapping
Flux<String> greetings(Authentication authentication) {
return Flux.interval(Duration.ofMillis(50))
.map((num) -> "Hello " + authentication.getName() + num + "!");
}
}