我意识到the docs在谈论这个,但是我的错误看起来并不像那样。
我正在使用React和Apollo Server2。尚未禁用调试,也未将环境设置为生产环境。我的所有错误都是完全无法理解的,除了消息本身之外,什么也没有说。示例:
Error: GraphQL error: Cannot return null for non-nullable field AddSubmissionOutput.id.
at new ApolloError (bundle.esm.js:76)
at Object.next (bundle.esm.js:1280)
at notifySubscription (Observable.js:152)
at onNotify (Observable.js:196)
at SubscriptionObserver.next (Observable.js:248)
at bundle.esm.js:1085
at Set.forEach (<anonymous>)
at Object.next (bundle.esm.js:1084)
at notifySubscription (Observable.js:152)
at onNotify (Observable.js:196)
at SubscriptionObserver.next (Observable.js:248)
at Object.next (bundle.esm.js:32)
at notifySubscription (Observable.js:152)
at onNotify (Observable.js:196)
at SubscriptionObserver.next (Observable.js:248)
at bundle.esm.js:107
每个单一错误看起来都是这样,并且基本上是没有用的。
我习惯了Laravel,它会说出此错误的确切文件和代码行,而不是“去删除代码行,直到找到它”。我放弃了Apollo,因为它太晦涩难懂了,但是我又在尝试,只是无法超越。
我对它期望太多了吗,还是这里有问题?
答案 0 :(得分:0)
如果在解析器内(或解析器导入的其他模块内)抛出错误,则会看到相应的堆栈跟踪。但是,上述验证错误并非源于您的代码库,而是将它们引发在库代码中,因此堆栈跟踪将反映出这一点。在这种情况下,该错误与响应验证有关,但相同的行为也适用于错误的查询。