在路由上获取查询参数,Angular 服务器端渲染

Get Query Params on route, Angular Server Side Rendering

是否可以获取服务器端的查询参数? 我的 Angular 应用程序有 Lambda Cloudfront 部署版本。

当平台浏览器出现时,一切正常。

当我尝试在服务器端获取查询参数时,我总是得到 null/undefined。

我试过这个:

ngOnInit(): void {
  this.queryId = this.route.snapshot.queryParamMap.get('id');
  this.metaPlatform.addTag({ property: this.queryId, content: this.queryId });
}
//I get this meta tag:
<meta property="null" content="null">

也试过这个:

ngOnInit(): void {
    const snapshot = this.router.routerState.snapshot;
    this.meta.addTag({property: snapshot.url.split('=')[1],content: snapshot.url.split('=')[1]);
}
//I get this meta tag:
<meta property="undefined" content="undefined">

我想根据 queryParams 设置元标记,但我找不到在服务器端设置它们的方法。

似乎是 CloudFront 配置问题。

在 CloudFront 中创建的行为检查“查询字符串转发和缓存”是否配置为转发特定或所有参数。