, поэтому я использую Nodejs и имею маршрут express, который выглядит так:
app.get('/approvedmr/:id', async (req, res) => {
try {
const projectid = parseInt(req.params.id, 10);
const apMR = await new MergeRequestApproval().getResponse(projectid, 'Any');
res.send(await new MergeRequestApproval().getHeader(apMR, 'Any'));
} catch {
res.sendStatus(404);
}
});
и это функция getResponse
:
async getResponse(id: number, approval: string) {
const axiosInstance = axios.create();
return await axiosInstance.get(`gitlaburl/api/v4/projects/${id}/merge_requests?approved_by_ids=${approval}&per_page=1`, defaultheader);
}
Я пропустил некоторые части в getResponse
, поскольку они только проверяют, содержит ли строка утверждения определенную строку.
Теперь. Локально все работает нормально, как только я развертываю докерированную версию этого на тестовом сервере, эти идентификаторы работают для [1; 99], если идентификатор больше этого, скажем, 100 или 330, он вернет такую ошибку:
Это ошибка. Стек:
"Error: Request failed with status code 404\n
at createError (/node_modules/axios/lib/core/createError.js:16:15)\n
at settle (/node_modules/axios/lib/core/settle.js:17:12)\n
at IncomingMessage.handleStreamEnd (/node_modules/axios/lib/adapters/http.js:236:11)\n
at IncomingMessage.emit (events.js:205:15)\n
at endReadableNT (_stream_readable.js:1154:12)\n
at processTicksAndRejections (internal/process/task_queues.js:84:9)"
Первоначально я использовал axios.get
вместо axios.create().get
, но потом прочитал, что это могло вызвать проблему, но этого не произошло.
Любая идея была бы принята с благодарностью!
Спасибо!