在解析器中,throw new createError.BadRequest("bad input")错误被Graphql-shield劫持并显示为
{
"errors": [
{
"message": "Not Authorised!",
"locations": [
{
"line": 2,
"column": 3
}
],
"path": [
"myMutation"
],
"extensions": {
"code": "INTERNAL_SERVER_ERROR",
"exception": {
"stacktrace": [
"Error: Not Authorised!",这是阿波罗服务器的设置
const schema = buildSubgraphSchema([
{ typeDefs: await typeDefs(), resolvers },
]);
const apolloServer = new ApolloServer({
schema: applyMiddleware(schema, permissions),
context: async ({ req, res }) => new AuthenticatedContext(req, res)
});如何返回实际发生的错误?
发布于 2022-03-14 02:38:25
我在盾牌文件上找到了解决方案
const permissions = shield({
Query: {
...
},
Mutation: {
...
},
}, {allowExternalErrors: true});根据文档,allowExternalErrors选项默认为false。
https://stackoverflow.com/questions/70309356
复制相似问题