Узел: маршрутизация на указанную конечную точку c в файле маршрутизатора - PullRequest
0 голосов
/ 25 апреля 2020

У меня есть приложение express с файлом маршрута users.js:

const usersRoute = require('./routes/users');
app.use('/users/', usersRoute);

Однако я также хочу получить доступ к маршруту "getpeci c user photo" (/users/:slug/photo) от другого root -уровневого маршрута (/myrandomroute). Как я могу сделать это из моего app.js?

app.use('/myrandomroute', usersRoute.get('/users/:id/picture')) // Doesn't work.

1 Ответ

1 голос
/ 25 апреля 2020

Если вы хотите просто переслать запрос на другой маршрут, то у вас есть как минимум две опции.

Во-первых, вы можете сделать именованную функцию из маршрута, на который хотите пересылать, экспортировать его из этот модуль и затем в этом обработчике маршрута, когда вы определяете в своем обработчике маршрута, что вы хотите вызвать этот другой обработчик маршрута, вы просто вызываете эту другую функцию обработчика маршрута, передавая ей соответствующие (req, res, next) аргументы из этого обработчика.

Во-вторых, вы можете просто использовать res.redirect(), чтобы перенаправить запросчик на другой маршрут и позволить ему вновь войти на другой маршрут.

Мы могли бы предложить вам более конкретное c решение для кодирования если вы показали нам реальный код и описали точную ситуацию, которую вы пытаетесь решить.


Затем, несколько мыслей для будущих вопросов. Придуманные или выдуманные примеры без реального кода и реальных обстоятельств часто оставляют у нас множество вопросов, и они лишают вас возможности предложить вам лучшее решение для актуальной проблемы, которая может оказаться в направлении, о котором вы даже не думали спроси о. Реальный код и реальные проблемы всегда намного лучше, чем примеры кода. По какой-то причине люди думают, что им следует скрыть свой реальный код и попытаться задать общий вопрос c с псевдокодом, и это никогда не будет лучшим вариантом для вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...