AngularAppEngine
Серверный движок приложений Angular. Управляет серверными приложениями Angular (включая локализованные), обрабатывает запросы на рендеринг и при необходимости преобразует HTML индексной страницы перед рендерингом.
API
class AngularAppEngine {
constructor(options?: AngularAppEngineOptions | undefined): AngularAppEngine;
handle(request: Request, requestContext?: unknown): Promise<Response | null>;
}
constructor
AngularAppEngineСоздаёт новый экземпляр серверного движка приложений Angular.
AngularAppEngine
handle
Promise<Response | null>Обрабатывает входящий HTTP-запрос: отдаёт предварительно отрендеренное содержимое, выполняет серверный рендеринг или предоставляет статический файл для маршрутов с клиентским рендерингом в зависимости от настройки RenderMode.
Request- HTTP-запрос, который нужно обработать.
unknown- Необязательный контекст рендеринга, например метаданные, связанные с запросом.
Promise<Response | null>Промис, который разрешается в объект итогового HTTP-ответа или в null, если подходящий маршрут Angular не найден.
Запрос к https://www.example.com/page/index.html приведёт к отдаче или рендерингу маршрута Angular, соответствующего https://www.example.com/page.
Чтобы предотвратить потенциальную подделку серверных запросов (SSRF), эта функция проверяет имя хоста request.url по списку разрешённых хостов. Если имя хоста не распознано, возвращается ошибка 400 Bad Request.
Решение: разрешите своё имя хоста, настроив allowedHosts в angular.json в: projects.[project-name].architect.build.options.security.allowedHosts. В качестве альтернативы передайте его непосредственно через параметры конфигурации AngularAppEngine.
Дополнительные сведения см. в разделе: https://angular.dev/best-practices/security#preventing-server-side-request-forgery-ssrf
Примечания по использованию
Этот класс следует создавать один раз и использовать как singleton во всём серверном приложении, чтобы обеспечить согласованную обработку запросов на рендеринг и управление ресурсами.
Super-powered by Google ©2010–2025.
Code licensed under an MIT-style License. Documentation licensed under CC BY 4.0.
https://angular.dev/api/ssr/AngularAppEngine