graphql apollo-server 中的文件上传错误

Posted

技术标签:

【中文标题】graphql apollo-server 中的文件上传错误【英文标题】:File upload error in graphql apollo-server 【发布时间】:2021-03-02 22:39:48 【问题描述】:

我正在学习graphql。我关注了这篇文章https://dev.to/dnature/handling-file-uploads-with-apollo-server-2-0-14n7#:~:text=With%20Apollo%20Server%202.0%2C%20you,a%20cloud%20storage%20provider%20instead。用于使用 graphql apollo-server 上传文件,但在图像文件夹中为响应和空文件获得无限缓冲。

我确定错误是在以下两个文件中

mutation file

schema file

【问题讨论】:

【参考方案1】:

您需要使用yarn add graphql-upload 添加graphql-upload 包。然后你需要在 ApolloServer 创建里面做一些更改到主服务器文件中,

const apolloServer = new ApolloServer(
    schema,
    resolvers,
    uploads: false, // add this
  );

那么你需要在你的主服务器文件中从graphql-upload添加graphqlUploadExpress中间件,

  app.use(graphqlUploadExpress( maxFileSize: 10000000, maxFiles: 10 ));

更多信息请参考这个github问题https://github.com/MichalLytek/type-graphql/issues/37#issuecomment-592467594

【讨论】:

以上是关于graphql apollo-server 中的文件上传错误的主要内容,如果未能解决你的问题,请参考以下文章

我们如何从 apollo-server 模块传递 ApolloServer 中的数据源和合并的 graphql 模式和解析器?

来自 GraphQL 网站的 Apollo-server 教程产生错误

使用 graphql 和 apollo-server 在解析器中获取会话

记录 apollo-server GraphQL 查询和每个请求的变量

如何修复错误:使用 graphql 在 apollo-server 中多次定义类型“Extra”

外部 WebSocket 服务器上的 Apollo-Server GraphQL 订阅