无法在运行时将 schema.gql 写入 Google 的 App Engine NestJS
Posted
技术标签:
【中文标题】无法在运行时将 schema.gql 写入 Google 的 App Engine NestJS【英文标题】:Cannot write schema.gql to Google's App Engine at runtime NestJS 【发布时间】:2020-07-17 04:59:16 【问题描述】:我正在使用 NestJS,我正在使用他们的 graphql 包。
https://docs.nestjs.com/graphql
Nest 在运行时生成 schema.gql 文件。这会导致 google 的 App Engine 出现问题,因为默认情况下,应用程序无法写入文件系统。
UnhandledPromiseRejectionWarning: Error: EROFS: read-only file system, open 'schema.gql'
我知道在文件系统上存储数据会是个问题,但是在运行时生成的这个 schema.gql 文件对于应用程序运行来说是必不可少的,如果它被复制也没关系。
有没有我想念的解决方法?我可以让它以某种方式生成服务器端吗?或者有什么方法可以在构建应用程序时将其与编译时间分开?
任何帮助都会得到帮助:)
【问题讨论】:
【参考方案1】:向 NestJS Discord 大声疾呼,@TreeMan360 回答了这个问题!
你在哪里:
autoSchemaFile
在你的
GraphqQLModule.forRoot(...
设置为:
true
它为您提供了一个自动的、仅在内存中的模式。我这样做是这样的:
GraphQLModule.forRoot(
autoSchemaFile: isLocalEnvironment() ? 'api-public.schema.gql' : true,
playground: !isProductionEnvironment(), ...
按照这些说明解决了我的问题!不错吧?
【讨论】:
以上是关于无法在运行时将 schema.gql 写入 Google 的 App Engine NestJS的主要内容,如果未能解决你的问题,请参考以下文章
在运行应用程序时将数据写入 plist 并将它们读取到 UITable
在JavaScript中写入文件时将每个字符串附加到新行[重复]
React Native 无法在应用程序 webview 中打开 url:intent://photos.app.goo.gl/