Я прочитал другие вопросы о расхождении маршрутов людей, а затем заказал маршруты, разрешающие проблему. У меня есть эта проблема, когда мой URL-маршрут рассматривается как параметр, а затем выражает несоответствия и ведет к неправильному маршруту. например вот два пути:Неправильный маршрут экспресс-маршрута
app.get('/byASIN/LowPrice/:asin/:price',function(req,res){});
и
app.get('/byASIN/:asin/:price', function(req, res) {});
Теперь все работает нормально, но как только я принимать какие-либо из параметров из первого маршрута он совпадает маршрут приводится ниже, не то, что я хочу , Если я ударил /byASIN/LowPrice/:asin/:price
, все работает нормально, но как только я ударил /byASIN/LowPrice/:asin
, он соответствует byASIN/:asin/:price
и, следовательно, вызывает неправильную функцию и сбой моего сервера. Я хотел бы, чтобы они явно совпадали, и если вызывается /byASIN/LowPrice/:asin
, ответьте некоторым предупреждением, например. вы звоните с меньшим аргументом. Что мне здесь не хватает?
Я не хочу чтобы сделать его необязательным, я просто хочу, чтобы маршрутизатор строго соответствовал. IMO '/ byASIN/LowPrice /' - это миры, отличные от '/ byASIN /: asin /', и я хотел бы, чтобы совпадение было строгим, и если есть недостающая проблема предупреждение о том, что пара отсутствует, а не переместить его на следующий совершенно другой маршрут. – user3677331
Этот ответ добавляет проницательность http://stackoverflow.com/a/10695714/489396 –