node.js - Apollo 服务器没有在节点控制台上打印错误
问题描述
我有一个 Apollo 服务器:
45 const server = new ApolloServer({
46 resolvers,
47 typeDefs,
48 debug: true,
49 })
在客户端,我收到一个 js 错误,例如:
扩展:{code:“INTERNAL_SERVER_ERROR”,...}
位置:[{line:3,column:7}]
0:{line:3,column:7}
消息:“无法读取未定义的属性'拆分'”
但是服务器运行的节点控制台没有打印任何东西:
node:63865) DeprecationWarning: 当前的 URL 字符串解析器已被弃用,并将在未来的版本中删除。要使用新的解析器,请将选项 { useNewUrlParser: true } 传递给 MongoClient.connect。服务器在http://localhost:4001/处准备就绪 Mongoose 默认连接打开到 mongodb://localhost/gepick (node:63865) DeprecationWarning: collection.ensureIndex 已被弃用。请改用 createIndexes。(节点:63865)[DEP0005] DeprecationWarning:由于安全性和可用性问题,不推荐使用 Buffer()。请改用 Buffer.alloc()、Buffer.allocUnsafe() 或 Buffer.from() 方法
解决方案
根据官方文档:https ://www.apollographql.com/docs/apollo-server/data/errors/#for-the-client-response
初始化时ApoloServer
,添加formatError: (err) => {...}
属性会打印出错误,见下图:
const server = new ApolloServer({
typeDefs,
resolvers,
formatError: (err) => {
console.error(err);
return err;
},
});
推荐阅读
- python - 如何使用 canny 找到最长的不间断边缘?
- swift - Flurry - 自定义事件
- python - Python VS 代码占用太多内存并且需要很长时间才能自动完成
- mfc - 在文件模式下为 MFCBrowseEdit 控件设置支持的文件类型?
- python - 使用列表中的循环查找标准偏差
- oop - 关于开放/封闭原则的困惑
- c - 问题是什么?不能比较数字
- java - 我可以在 Flux.generate 状态生成器中阻止远程调用吗
- python - 使用 python Beautifulsoup 抓取具有相同类的多个值的数据
- python-3.x - Django Invalid block tag:加载标签时出现“urls”错误