Если сервер SSE строго следует спецификации SSE, вы не можете добавить какие-либо пользовательские заголовки.
Тем не менее, если это так, пробовали ли вы что-то подобное с Spring WebFlux Client:
ResolvableType type = forClassWithGenerics(ServerSentEvent.class, String.class);
WebClient client = WebClient.create();
client.get()
.uri("http://localhost:8080/sse")
.accept(TEXT_EVENT_STREAM)
.header("MyHeader", "Foo") // Add your headers here.
.exchange()
.flatMapMany(response -> response.body(toFlux(type)))
.subscribe(System.out::println,
Throwable::printStackTrace);
Я проверил этот кусок кода на сервере SSE Undertow.Кажется, работает: Undertow может получить отправленный пользовательский заголовок.