Экспресс проверяет маршруты в порядке, в котором они определены, и использует первый обработчик, маршрут которого совпадает с путем входящего запроса. Поскольку вы помещаете свой корневой маршрут ("/"
) наверх, а все маршруты соответствуют корневому маршруту (как минимум), он будет соответствовать и обрабатывать любой поступающий запрос.
Чтобы исправить это, вы можете переместить определение своего корневого маршрута в конец app.js. Например:
const post = require("./routes/post");
app.use("/posts", post);
app.use("/", (req, res) => {
res.render("index");
});
В общем, вы должны определить под-маршруты перед их родителями и определить маршруты со статическими значениями перед теми, у которых переменные находятся в тех же позициях. Итак, хороший пример порядка будет:
app.use("/posts/new", ...);
app.use("/posts/:id", ...);
app.use("/posts", ...);
app.use("/", ...);
Преобразование PCL к PDF может быть невероятно сложным (предположение, что Вам нужен он для дженерика и не только для простого PCL). У нас есть investaged, это много раз и в конце всегда возвращается к использованию других инструментов. Мы продолжаем заниматься расследованиями, поскольку мы - магазин разработки, который использует и понимает все элементы PCL к большой детали. Если Вы не будете действительно familure с PCL, то это будет грандиозная задача. Одна из главных проблем - то, что сверхурочное время, принтеры стали, по большей части, tollerent уродливого PCL и как таковой, создав что-то, что следует, правила к букве закона не всегда достаточно. Если; однако, Вы управляете PCL, Вы можете разрабатывать его с некоторой суммой успеха.
Я не означаю выключать Вас этого, и я понимаю, что Вы приехали, сюда ища ответ программирования, но я должен сказать, это - далекое от простой задачи и существует не 'standarized алгоритмы' для этого (что я знаю).
Если бы это разработано, чтобы быть инструментом еще для работы рядом с чем-то, что Вы создаете, я настоятельно рекомендовал бы рассмотрение этих парней:
Это - безусловно большая часть полного набора инструментов (Windows) для обработки этого. Существуют немногие другие, но, на основе нашего широкого применения PCL и инструментов преобразования за эти годы, это - единственное та работа все время.
Править: Последний раз мы работали с LincPDF (http://www.lincolnco.com/). Это - также превосходный продукт с, обладает одним большим преимуществом, развертывание просто. Некоторые из других инструментов имеют сложные установки программного обеспечения. Это решение очень легко для нас развернуться как функция в приложении. Это также быстрее затем любые инструменты, которые мы протестировали до настоящего времени (по крайней мере, с PCL, который мы генерируем из наших приложений, который довольно сложен, поскольку они включают специализированные шрифты и макросы).
Существует ряд справочников от HP; Вы могли повторно реализовать синтаксический анализатор PCL и произвести соответствующий PDF.
Вы могли бы запустить с "Руководства технического справочника PCL 5 Языка принтера" (http://h20000.www2.hp.com/bc/docs/support/SupportManual/bpl13210/bpl13210.pdf). Ищите HP больше (http://search.hp.com/query.html?qt=PCL+reference).
Или Вы могли украсть код или идеи от GhostPCL (http://www.ghostscript.com/GhostPCL.html)