При использовании ExpressJS с NodeJS вы можете использовать app.get
и app.use
для нескольких полезных аспектов.
После инициализации вашего приложения, например let app = express();
, вы можете найти ниже несколько примеров:
app.use (...)
Как вы правильно указали, это полезно для "промежуточного программного обеспечения", оно будет применяться ко всем GET, POST и т. д., которые вы указываете после слов .Например, вы можете использовать промежуточное ПО только перед GET, которые вы хотите использовать «с аутентификацией пользователя / пароля».
Укажите папку для статического содержимого: app.use(express.static(__dirname + "/public"));
Включая синтаксический анализатор для содержимого JSON: app.use(bodyParser.json());
Определите строку подписи «Cookie Parser»: app.use(cookieParser("Signing text example"));
Отдельные маршрутизаторы для ваших URL в разных файлах: app.use("/api", apiRouter);
или app.use("/news", newsRouter);
или app.use("/", siteRouter);
Для пользовательского обработчика ошибок: app.use(sites404handler);
или app.use(globalErrorHandler);
app.get (...)
Говоря о app.get(...)
, вы указываете, какие URL будут посещаться с помощью метода GET.Но вы можете использовать несколько вариантов здесь:
Укажите, что у вас есть домашняя страница: app.get("/", function(req, res) { res.send("Hello world!"); });
Принимать запросы POST: app.post("/", function(req, res) { res.send("Hello world! With POST call."); });
Вы также можете отделить его в другом файле как «apiRouter.js» и включить туда: let router = express.Router(); router.route("/books").get(function(req, res) { res.send("/api/books/ called via a Router"); });
app.set (...)
Помните, что у вас также есть опция app.set(...)
.Это полезно, например, для определения двигателей представления, таких как рули (файлы .hbs).
Надеюсь, это поможет!