Задать вопрос
@D8i

Как получить фрагмент (все, что после #) из URI на apache http server?

Есть простой http сервер, на который приходит GET запрос.
public class Server {
    public static void start() {
        HttpServer server = ServerBootstrap.bootstrap()
                .setListenerPort(80)
                .registerHandler("/listener", new Handler())
                .create();
        try {
            server.start();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    private static class Handler implements HttpRequestHandler {
        @Override
        public void handle(HttpRequest request, HttpResponse response, HttpContext context) throws IOException {

        }
    }
}


С запросами вида:
http://localhost/listener?arg_first=1&arg_second=2
справляется без проблем.

А вот стоит только заменить '?' на '#' начинаются проблемы. С таким запросом:
http://localhost/listener#arg_first=1&arg_second=2
я не могу добиться, чтобы мне показало все, что находится дальше '#'.

Как я понял, это называют фрагментом, но мне особо это ничего не дало. Добрые люди, помогите понять и получить мои аргументы.
  • Вопрос задан
  • 68 просмотров
Подписаться 1 Средний Комментировать
Решения вопроса 1
xez
@xez Куратор тега Java
TL Junior Roo
Все что, после # не попадает на сервер.
Можно поробовать использовать js на клиентской стороне для обработки.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@StainlessDespair
request.uri().getFragment​()

Для того чтобы разбить на части можешь использовать метод split().
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы