#node.js #express
#node.js #экспресс
Вопрос:
Я использую express.js фреймворк и маршрутизатор, похоже, работают локально, но не на производстве
router.route(`/server/template/:id`)
.delete(test.delete)
.get(temp.get);
router.route(`/server/template`)
.post(test.post)
.get(test.get);
Я получаю сообщение об ошибке ниже:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<title>404 Not Found</title>
<h1>Not Found</h1>
<p>The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again.</p>
Комментарии:
1. Какой из них выходит из строя? Действительно ли шаблон, определенный с помощью
id
, существует (другая база данных?). Является ли этот документ вашим определенным ответом 404? Как насчет привязки ip? Работает ли в производственной среде какая-либо другая служба, которая может использовать тот же порт? Сам код узла на самом деле не различает отладку и производство, поэтому ошибка либо в конфигурации машины, либо в какой-то части кода, вы не понимаете2. «/server/template/:id» может принимать входящие вызовы, но «/server/template» выходит из строя
3. Ну, ваш маршрут определен
/server/templates
так, что если вы вызываете/server/template
(обратите внимание на пропущенные s в конце), действительного маршрута нет, потому/server/template/{id}
что требуется идентификатор. Итак, честно говоря, я сомневаюсь, что запрос/server/template
работает на локальном4. к сожалению, это опечатка. Это /server/template . Я обновлю свой вопрос.
5. Если это так, ошибка не в коде, который вы нам показываете
Ответ №1:
Вам необходимо использовать веб-сервер Apache для имитации HTML-сервера на вашем собственном компьютере или в Интернете, или apache friends, или XAMPP, или IIS.
Комментарии:
1. В моем случае приложение Node не обслуживает HTML-страницу. Он просто действует как приложение REST для создания / обновления / получения сведений из базы данных.
2. Есть идеи, какой узел и express.js есть? Очевидно, что нет