ApolloGraphQL中的非空字段不能返回null
创始人
2024-09-09 10:00:51
0

在Apollo GraphQL中,如果定义的字段是非空字段,则该字段不能为空,不能返回null。如果尝试返回null值,则会报“Cannot return null for non-nullable field”错误。

为了解决这个问题,我们需要检查服务端代码中是否确实返回了非空字段的null值。如果是的话,需要找到出现问题的方法并修改它,确保它返回正确的值或者默认值。

例如,我们可以在查询函数中使用更严格的类型,并加入null的处理,确保查询参数不会为空:

type Query {
  user(id: ID!): User
}

type User {
  id: ID!
  name: String!
  email: String
}

resolvers = {
  Query: {
    user(root, { id }, context) {
      const user = getUserById(id)
      if (!user) {
        throw new Error('User not found')
      }
      return {
        id: user.id,
        name: user.name,
        email: user.email || ''
      }
    }
  }
}

上面的代码中,如果用户没有提供唯一标识符或找不到该标识符,则会抛出异常。在返回User对象时,我们可以使用条件运算符处理email字段的null值,以确保返回正确的类型。

相关内容

热门资讯

五机器人(wpk德州俱乐部)外... 五机器人(wpk德州俱乐部)外挂透明挂辅助工具(透视)力荐教程(有挂讲解)-哔哩哔哩;1分钟了解详细...
第7个德州扑克!德扑之星软件模... 这是一款非常优秀的德州ai人工智能 ia辅助检测软件,能够让你了解到德州ai人工智能中牌率当中全部隐...
两个代打!wpk代理合作(德州... 两个代打!wpk代理合作(德州职业代打)其实真的有挂(今日头条)-哔哩哔哩是一款可以让一直输的玩家,...
第3玄学!中至九江讨赏有什么规... 1、第3玄学!中至九江讨赏有什么规律吗(辅助挂)太坑了其实真的有挂(有挂助手)-哔哩哔哩;详细教程。...
8个渠道!德扑之星ai代打(开... 8个渠道!德扑之星ai代打(开房间教程)软件透明挂(有挂细节)-哔哩哔哩,支持语音通讯、好友开房及战...
第9猫腻(WepoKe)外挂透... WepoKe新手教程相关信息汇总(需添加指定薇757446909获取下载链接);第9猫腻(WepoK...
五个自建房!wopoker分析... 您好,poker这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家在这款游...
四口控制(鱼扑克发牌规律)外挂... 鱼扑克发牌规律新手教程相关信息汇总(需添加指定薇757446909获取下载链接);四口控制(鱼扑克发...
第9个ai辅助!德扑之星数据解... 第9个ai辅助!德扑之星数据解析(德州ai人工智能)透视辅助(有挂猫腻)-哔哩哔哩;(需添加指定薇1...
第七代打ai!边锋斗地主好友约... 第七代打ai!边锋斗地主好友约局的挂怎么买(辅助挂)太坑了原来真的有挂(有挂详情)-哔哩哔哩;一、边...