#spark-java
#spark-java
Вопрос:
Мне было интересно, можете ли вы помочь мне с проблемой, с которой я сталкиваюсь при использовании spark для получения маршрута. Я работаю с этими двумя конечными точками:
/get?contains=sometext.
/get?_id=abc.
У меня установлены эти два маршрута get для получения параметров jQuery для каждой конечной точки.
get("/get","application/json",(request, response) -> {
String id = request.queryParams("_id");
return "Hello get _id : " id;
});
Второй:
get("/get","application/json",(request, response) -> {
String contains = request.queryParams("contains");
return "Hello get contains : " contains;
});
из этих двух маршрутов получения только параметры запроса contains работают нормально, но маршрут получения _id не работает, потому что он возвращает null
. Интересно, связано ли это с тем фактом, что обе конечные точки имеют один и тот же путь получения.
Мы будем очень признательны за любую помощь. Спасибо
Комментарии:
1. Вы имеете в виду sparkjava.com ? или apache-spark?
2. Я проверил sparkjava.com но у них нет ни одного примера, использующего один и тот же путь, но разные ключи и значения jquery. К сожалению, я не могу изменить пути к конечным точкам.
Ответ №1:
В Sparkjava у вас должна быть только одна конечная точка на маршрут (в противном случае, я бы предположил, что будет учитываться только последняя конечная точка, которую вы определили).
Тогда у вас могла бы быть логика, которая проверяет, какие параметры передаются внутри нее, используя:
request.queryParams("contains")
request.queryParams("_id")
или просто
request.queryParams()
чтобы получить их все в виде списка, а затем проверить этот список на наличие этих параметров.
Если один из них является null
, это означает, что этот параметр не был передан.
Комментарии:
1. Спасибо! Это именно то, что я сделал в конце.