当使用Apollo Server Express时,如果请求的实体太大,会出现错误。这是因为默认情况下,Express限制请求实体的大小为100kb。要解决这个问题,可以通过更改Express的配置来增加请求实体的大小限制。
下面是一个解决方法的示例代码:
const express = require('express');
const { ApolloServer } = require('apollo-server-express');
const app = express();
// 增加请求实体的大小限制为1mb
app.use(express.json({ limit: '1mb' }));
const server = new ApolloServer({ /* Apollo Server 配置 */ });
server.applyMiddleware({ app });
app.listen({ port: 4000 }, () => {
console.log(`服务器正在运行,访问地址为 http://localhost:4000${server.graphqlPath}`);
});
在上面的示例代码中,通过使用express.json()
中的limit
选项来增加请求实体的大小限制。'1mb'
表示限制请求实体的大小为1mb。您可以根据需要调整这个值。
使用上述代码,您可以增加请求实体的大小限制,以解决“Apollo Server Express: 请求实体太大”的问题。