Сервер FastHttp «удаляет» заголовок авторизации - PullRequest
0 голосов
/ 11 января 2020

Редактировать: Исправлено. Чтобы увидеть, что было не так, взгляните на this .

Когда я пытаюсь отправить запрос на сервер FastHttp с заголовком Authorization, заголовок удаляется. Когда я отправляю запрос почтальону, заголовок авторизации не удаляется.

Чтобы посмотреть, какие заголовки действительно отправляются, я настроил веб-сервер Undertow (Java) и отправил свои запросы на этот сервер.

Код веб-сервера Java:

Undertow undertow = Undertow.builder().addHttpListener(55446, "localhost", new HttpHandler() {
    public void handleRequest(final HttpServerExchange httpServerExchange) throws Exception {
        System.out.println("------------------------------------------");
        System.out.println("Con from "+httpServerExchange.getHostName());
        System.out.println("Query "+httpServerExchange.getQueryString());
        System.out.println("Header "+httpServerExchange.getRequestHeaders().getHeaderNames().stream().map(str -> str.toString()+": "+httpServerExchange.getRequestHeaders().get(str).element()).collect(Collectors.joining("; ")));
        httpServerExchange.getRequestReceiver().receiveFullString((httpServerExchange1, s) -> System.out.println("Body "+s));

        httpServerExchange.setStatusCode(400);
    }
}).build();
undertow.start();

Вывод при отправке запроса почтальоном:

------------------------------------------
Con from localhost
Query 
Header Accept: */*; Postman-Token: 275ba9bb-77cc-4c9f-baa5-653f60162551; Connection: keep-alive; Authorization: Bearer xxxxxxxxxxxxxxxxxxxxx; Cache-Control: no-cache; Accept-Encoding: gzip, deflate; User-Agent: PostmanRuntime/7.21.0; Host: localhost:55446
Body 

Вывод при отправке запроса с моей заявкой:

------------------------------------------
Con from localhost
Query 
Header test: f; Accept: application/json, text/json, text/x-json, text/javascript, application/xml, text/xml; Authorization: Bearer testtoken; Accept-Encoding: gzip, deflate; User-Agent: VSpedSync/DevBuild; Host: localhost:55446
Body 

В обоих случаях отправляется заголовок авторизации, но когда я отправляю запросы на сервер FastHttp, заголовок содержит только тот, что от Postman.

Я так растерялся, почему именно это происходит?

...