小编btd*_*337的帖子

Nestjs Swagger 4 的循环依赖

当我将@nest/swagger库更新到版本 4 时,发生了此错误:

(node:16134) UnhandledPromiseRejectionWarning: Error: A circular dependency has been detected (property key: "customer"). Please, make sure that each side of a bidirectional relationships are using lazy resolvers ("type: () => ClassType").
    at SchemaObjectFactory.createNotBuiltInTypeReference (/opt/desenvolvimento/Haizen/projectx_back/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:182:19)
    at SchemaObjectFactory.mergePropertyWithMetadata (/opt/desenvolvimento/Haizen/projectx_back/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:117:25)
    at /opt/desenvolvimento/Haizen/projectx_back/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:66:35
    at Array.map (<anonymous>)
    at SchemaObjectFactory.exploreModelSchema (/opt/desenvolvimento/Haizen/projectx_back/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:65:52)
    at SchemaObjectFactory.createNotBuiltInTypeReference (/opt/desenvolvimento/Haizen/projectx_back/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:187:37)
    at SchemaObjectFactory.mergePropertyWithMetadata (/opt/desenvolvimento/Haizen/projectx_back/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:117:25)
    at /opt/desenvolvimento/Haizen/projectx_back/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:66:35
    at Array.map (<anonymous>)
    at SchemaObjectFactory.exploreModelSchema (/opt/desenvolvimento/Haizen/projectx_back/node_modules/@nestjs/swagger/dist/services/schema-object-factory.js:65:52)
Run Code Online (Sandbox Code Playgroud)

我的模型类似乎是这样的:

@Entity()
export class Job {
.
.
.
    @ManyToOne(type => Customer, customer => customer.jobs)
    @ApiProperty({ type: …
Run Code Online (Sandbox Code Playgroud)

circular-dependency swagger nestjs

12
推荐指数
3
解决办法
3854
查看次数

如何通过 GKE Pod 访问 Google Cloud Storage 中的文件

我正在尝试使用 Axios 客户端在 Node.js 应用程序中获取 Google Cloud Storage (GCS) 的图像文件。在使用我的 PC 的开发模式下,我传递了一个不记名令牌,并且一切正常。

但是,我需要在 Google Kubernetes Engine (GKE) 托管的集群的生产中使用它。

我推荐了创建服务帐户(GSA)的教程,然后通过工作负载身份方法与 kubernetes 帐户(KSA)建立了联系,但是当我尝试通过应用程序上的一个端点获取文件时,我收到:

{"statusCode":401,"message":"Unauthorized"}
Run Code Online (Sandbox Code Playgroud)

缺少什么?


更新:我所做的:

  1. 创建谷歌服务帐户

https://cloud.google.com/iam/docs/creating-managing-service-accounts

  1. 创建 Kubernetes 服务帐户
# gke-access-gcs.ksa.yaml file

apiVersion: v1
kind: ServiceAccount
metadata:
  name: gke-access-gcs
Run Code Online (Sandbox Code Playgroud)
kubectl apply -f gke-access-gcs.ksa.yaml
Run Code Online (Sandbox Code Playgroud)
  1. 关联 KSA 和 GSA
gcloud iam service-accounts add-iam-policy-binding \
  --role roles/iam.workloadIdentityUser \
  --member "serviceAccount:cluster_project.svc.id.goog[k8s_namespace/ksa_name]" \
  gsa_name@gsa_project.iam.gserviceaccount.com
Run Code Online (Sandbox Code Playgroud)
  1. 记下KSA并完成KSA和GSA之间的链接
kubectl annotate serviceaccount \
  --namespace k8s_namespace \
   ksa_name \
   iam.gke.io/gcp-service-account=gsa_name@gsa_project.iam.gserviceaccount.com
Run Code Online (Sandbox Code Playgroud)
  1. 设置读写角色:
gcloud projects add-iam-policy-binding project-id \
--member=serviceAccount:gsa-account@project-id.iam.gserviceaccount.com \
--role=roles/storage.objectAdmin
Run Code Online (Sandbox Code Playgroud)
  1. 测试访问: …

node.js google-cloud-storage kubernetes google-kubernetes-engine axios

6
推荐指数
1
解决办法
1万
查看次数

ng add @nebular/theme - 错误:找不到模块@angular-devkit/core/src/terminal

我是第一次尝试 Nebular,按照他们网站上的教程进行操作。我通过安装 Angular CLI 创建了一个新的 Angular 项目。这不是我的第一个 Angular 项目,Angular 似乎工作正常。然后我尝试添加 Nabular

sudo ng add @nebular/theme
Run Code Online (Sandbox Code Playgroud)

安装似乎工作正常,但随后我得到:

sudo ng add @nebular/theme
Run Code Online (Sandbox Code Playgroud)

我很确定 Nebular 没有正确安装,因为app.module.ts没有修改,也没有在angular.json.

这里有什么问题?

angular nebular

5
推荐指数
1
解决办法
2525
查看次数

截屏时屏幕闪烁 | ArchLinux 和 Manjaro

当您尝试在 Arch Linux 或 Manjaro 中共享屏幕或使用屏幕录像机时,屏幕会像下面这样闪烁: https: //i.stack.imgur.com/nvi4F.jpg

怎么解决?

linux archlinux screensharing screen-recording manjaro

4
推荐指数
1
解决办法
1321
查看次数

如何修复错误错误:默认包未在 Nebular 中注册

如果您尝试加载 Nebular 页面,然后出现此错误,该怎么办?

Error: Default pack is not registered.
Run Code Online (Sandbox Code Playgroud)

icons angular nebular

4
推荐指数
1
解决办法
2472
查看次数

Nest.js | @Exclude() 装饰器在 POST 方法中不起作用

即使将类转换器@Exclude()库中的装饰器添加到变量中,它也会在创建对象时返回。

使用空构造函数和启用该toPlainOnly属性都会失败:

@Exclude()
password: string;
Run Code Online (Sandbox Code Playgroud)
@Exclude({ toPlainOnly: true })
password: string;
Run Code Online (Sandbox Code Playgroud)

该怎么办?

node.js nestjs class-transformer

4
推荐指数
1
解决办法
7927
查看次数