【发布时间】:2021-12-10 12:17:16
【问题描述】:
我目前正在使用@nuxt/apollo 模块。此模块是否适用于文件上传或我需要将 HTTPLink 更改为另一个?
【问题讨论】:
-
这能回答你的问题吗? nuxt 2.x with apollo 3
-
@kissu,谢谢,但正如您所见,这也是我的问题))所以,它甚至没有解决我的问题)但无论如何感谢您的光临!
我目前正在使用@nuxt/apollo 模块。此模块是否适用于文件上传或我需要将 HTTPLink 更改为另一个?
【问题讨论】:
在深入检查了库和我的堆栈之后,我终于找到了问题所在。
根据最近的文档,我已经对前端和后端进行了非常简单的设置(自从我上次与他们合作以来,它们发生了巨大的变化),我发现@nuxt/apollo 显然支持开箱即用的文件上传(感谢Guillaume Chau)
问题出在我的后端,我必须将 apollo-server-express 从 "^2.21.0" 更新为 "^3.4.0"(我正在关注文档,但我的版本较旧,并且不支持文件上传)并按照对于最近的文档,我已经不得不使用 graphqlUploadExpress 中间件并首先像这样启动 GraphQL 服务器:
const apolloServer = new ApolloServer({
schema: schema,
debug: true,
context: contextHook
})
export const applyGraphQLMiddleware = async ({ server: app }: { server: Application }) => {
app.use(graphqlUploadExpress()); // adding this middleware
await apolloServer.start(); // starting the GraphQL Server
apolloServer.applyMiddleware({ app }); // only after that I am applying the express server as a middleware
}
现在文件上传似乎可以正常工作了
以防万一,您可以在 docs 中找到 Schema 和 Resolvers 的整个设置
【讨论】: