Spec-Zone.ru › Angular

AngularNodeAppEngine

Серверный движок приложений Angular. Управляет серверными приложениями Angular (в том числе локализованными), обрабатывает запросы на рендеринг и при необходимости преобразует HTML индексной страницы перед рендерингом.

API

class AngularNodeAppEngine {
  constructor(options?: AngularNodeAppEngineOptions | undefined): AngularNodeAppEngine;
  handle(request: IncomingMessage | Http2ServerRequest | Request, requestContext?: unknown): Promise<Response | null>;
}

constructor

AngularNodeAppEngine

Создаёт новый экземпляр серверного движка приложений Angular для Node.js.

@paramoptionsAngularNodeAppEngineOptions | undefined

Параметры серверного движка приложений Angular для Node.js.

@returnsAngularNodeAppEngine

handle

Promise<Response | null>

Обрабатывает входящий HTTP-запрос, предоставляя предварительно отрендеренное содержимое, выполняя рендеринг на стороне сервера или отдавая статический файл для маршрутов, отрисовываемых на стороне клиента, в зависимости от настройки RenderMode.

Этот метод преобразует IncomingMessage, Http2ServerRequest или Request Node.js в формат, совместимый с AngularAppEngine, и делегирует ему логику обработки.

@paramrequestIncomingMessage | Http2ServerRequest | Request
  • Входящий HTTP-запрос (IncomingMessage, Http2ServerRequest или Request).
@paramrequestContextunknown
  • Необязательный контекст для рендеринга, например метаданные, связанные с запросом.
@returnsPromise<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. В качестве альтернативы можно указать разрешённое имя хоста с помощью переменной среды process.env['NG_ALLOWED_HOSTS'] или передать его непосредственно через параметры конфигурации AngularNodeAppEngine.

Дополнительные сведения см. в разделе: 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/node/AngularNodeAppEngine

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API