首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在GraphQL查询之后:属性'then‘在类型'void’上不存在

在GraphQL查询之后,属性'then'在类型'void'上不存在是一个常见的错误消息,它通常表示在查询中使用了错误的语法或未正确处理返回的结果。

首先,GraphQL是一种查询语言和运行时环境,用于从服务器端获取数据。它使用类型系统来描述数据模型,并允许客户端按需获取所需的数据。GraphQL查询通常由字段和对象组成,每个字段都可以有自己的参数和返回类型。

然而,在这个错误消息中,提到了类型'void'和属性'then',这意味着在GraphQL查询中遇到了一个返回类型为'void'的字段,并尝试在其上调用'then'属性。

在GraphQL中,'void'通常表示一个不返回任何值的操作或函数。它类似于编程语言中的'void'类型,表示不返回任何结果。

属性'then'通常与Promise对象相关,它表示当Promise对象解决(resolved)时执行的回调函数。然而,在这里使用'then'属性可能是一个错误,因为类型'void'并没有这个属性。

要解决这个问题,您可以采取以下步骤:

  1. 检查GraphQL查询语句中的语法错误,确保查询的结构和语法是正确的。
  2. 检查返回该错误消息的查询中的字段和参数,确认是否有错误或未处理的字段。
  3. 检查返回该错误消息的查询中,字段的返回类型是否正确。确保没有将'void'类型用作字段的返回类型。
  4. 如果您使用的是某个GraphQL客户端库,查阅其文档以了解如何正确处理返回的结果和错误。
  5. 如果您在使用某个特定的GraphQL服务器或框架,查阅其文档以了解如何正确定义和处理返回类型。

在这个特定错误消息中,没有提供足够的上下文来确定具体的修复方法。但通过检查GraphQL查询语句和返回结果的相关部分,您应该能够找到导致这个错误的原因,并采取相应的措施进行修复。

请注意,我不能提及具体的腾讯云产品和链接,但您可以根据您的需求和上下文,查阅腾讯云文档以获取与云计算和GraphQL相关的适当产品和解决方案。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

GraphQL 快速搭建服务端 API

同时可以看到,crew 属性是一个集合属性,每一个元素又是类型 Crew ,我们还可以(也必须)查询语句中指定哪些 Crew 的字段是需要返回的。...开始服务器端使用GraphQL 安装 Graphene-Python 可以通过 pip 安装,其 pypi 的包名为 graphene,目前大版本已经更新到了2.0,所以可以用如下命令安装: pip...,不需要另外定义的情况下,Starship 的 name, captainName 甚至是复合列表属性 crew 也能正常查询。...可以看到 crew 里每个元素的 specie 属性最后是以字符串常量的形式返回的,这归功于我们 code 2.5 中专门指定了里 specie 的类型,如果不指定,该字段就会默认成为数据库定义的整数...现在就可以通过 Flask 启动的主机地址和端口来访问 GraphQL 的服务了,假设 Flask 应用启 localhost:8080 ,那么只要为客户端配置一个入口: localhost:8080

2.5K30

GraphQL到底怎么使?看看智联前端团队技术沉淀

name articles honour } # articles:三层 1 { time title } # honour:三层 2 { time name } Field 字段:类型中的每个属性都是一个字段...执行字段 Resolver 之后会得字段的值,如果值的类型为对象,则会继续执行其下层字段的 Resolver,如 contractedAuthor() 后得到值类型为 Author,会继续执行 name...,亦或是服务端侧定义 Schema 中的 Query 类型。...数据 Mock:服务端 Schema 中包含数据结构和类型,所以在此基础实现一个 Mock 服务并不困难,apollo-server 就有实现,可以加快前端开发介入。...版本控制:客户端结构化的查询方式可以让服务追踪到字段的使用情况。且增加字段时,根据结构化查询按需查询的特点,不会影响旧的调用(虽然 JavaScript 对多了个字段的事情不在意)。

2.3K20
  • 基于 actix、async-graphql、rbatis、pgsqlmysql 构建 GraphQL 服务(4)-变更服务

    本篇文章,是我们进行 GraphQL 服务后端开发的最后一篇:变更服务。本篇文章之后GraphQL 服务后端开发第一阶段告一阶段,之后我们进行 基于 Rust 的 Web 前端开发。...本系列文章中,采用螺旋式思路,Web 前端基础开发之后,再回头进行 GraphQL 后端开发的改进。...定义 NewUser 输入对象类型 在此,我们定义一个欲插入 users 集合中的结构体,包含对应字段即可,其为 async-graphql 中的输入对象类型。...因此,在此我们需要介绍一个 async-graphql 中的属性标记 #[graphql(skip)],其表示此字段不会映射到 GraphQL。...因为我们已经设定 email 为用户的唯一性标志属性,因此直接使用 get_user_by_email 查询已经插入用户即可。

    1.2K30

    如何优雅地扩展GraphQL系统能力

    ENUM # 枚举 ENUM_VALUE # 枚举值 INPUT_OBJECT # 输入对象 INPUT_FIELD_DEFINITION # 输入字段定义 GraphQL 规范并不会限制指令只能定义可执行位或者类型系统位...,但是为了明确指令是用在查询、还是对于类型系统生效,往往只将指令的生效位置限定在其中一种: 对于可执行位指令,其作用往往跟业务场景相关。...dataFetcher, InstrumentationFieldFetchParameters parameters) { return dataFetcher; } // 列表字段结束之后可进行的回调动作...此外,指令的合法使用往往有些前置条件,例如过滤指令不可用在简单对象或基本类型字段。...environment.getFieldDefinition().getType() ); // 判断指令指令是否注解列表类型字段

    1.3K20

    GraphQL及元数据驱动架构在后端BFF中的实践

    实际模块的生成过程中存在诸多的差异,比如以下两种差异: 字段拼接逻辑差异:比如以上图中两个团购货架的团购标题为例,同样是标题,丽人团购货架中的展示规则是:[类型] + 团购标题,而在足疗团购货架的展示规则是...比如除了价格、库存、销量等每个商品都有的标准属性之外,不同的商品类型一般还会有这个商品特有的属性。...结果CompletableFuture完成之后,调用completeValue,基于结果类型分别处理。...如果查询结果是列表类型,那么会对列表类型进行遍历,针对每个元素递归执行completeValue。...2)类型转换优化 通过GraphQL查询引擎拿到的GraphQL模型,和业务实现的DataFetcher返回的取数模型是同构,但是所有字段的类型都会被转换成GraphQL内部类型

    1.6K50

    构建 Rust 异步 GraphQL 服务:基于 tide + async-graphql + mongodb(4)- 变更服务

    构建 Rust 异步 GraphQL 服务:基于 tide + async-graphql + mongodb(3)- 第一次重构之后,因这段时间事情较多,所以一直未着手变更服务的开发示例。...对象类型的使用 另一个 Rust Web 技术栈示例项目基于 actix-web + async-graphql + rbatis + postgresql / mysql 构建异步 Rust GraphQL...因为我们使用了 async-graphql 的简单对象类型、复杂对象类型。 使用简单对象类型 一篇文章中,我们使用的是 async-graphql 的普通对象类型,即 ....的文档中,已经多了一个类型定义: 执行查询,我们看看返回结果: 变更服务 接下来,我们开发 GraphQL 的变更服务。...因为我们已经设定 email 为用户的唯一性标志属性,因此直接使用 get_user_by_email 查询已经插入用户即可。

    1.6K31

    GraphQL】225-GraphQL真香入门教程

    rootValue:处理对应查询的处理器 graphiql:是否开启调试窗口,开发阶段开启,生产阶段关闭 接下来运行项目,命令行中执行 node hello.js,这里可以 graphiql 做调试...自定义返回类型 实际开发中,我们返回的数据类型可能是一个对象,对象中可能既有 Int 类型属性,也有 String 类型的值,等等,这里我们可以使用 自定义返回类型 来处理: //...省略其他 const...然后定义变量 variables ,指定属性的值,之后通过 fetch 发起请求: 获取数据 function...属性 属性定义 定义类型后,键值对形式 定义参数对象 fields 属性中,值为对象,每个属性名为键名,值也是对象,其中 type属性的值为 graphql 中的属性,下面会补充 补充: fields...属性中的子属性类型通常有: graphql.GraphQLString graphql.GraphQLInt graphql.GraphQLBoolean ....

    8.1K21

    GraphQL真香入门教程

    rootValue:处理对应查询的处理器 graphiql:是否开启调试窗口,开发阶段开启,生产阶段关闭 接下来运行项目,命令行中执行 node hello.js,这里可以 graphiql 做调试...自定义返回类型 实际开发中,我们返回的数据类型可能是一个对象,对象中可能既有 Int 类型属性,也有 String 类型的值,等等,这里我们可以使用 自定义返回类型 来处理: //...省略其他 const...然后定义变量 variables ,指定属性的值,之后通过 fetch 发起请求: 获取数据 function...字符后面,这里是 typeHero 参数对象的 name 属性 属性定义 定义类型后,键值对形式 定义参数对象 fields 属性中,值为对象,每个属性名为键名,值也是对象,其中 type属性的值为...graphql 中的属性,下面会补充 补充: fields 属性中的子属性类型通常有: graphql.GraphQLString graphql.GraphQLInt graphql.GraphQLBoolean

    7.2K30

    GraphQL+Koa2实现服务端API结合Apollo+Vue

    比如:字段冗余,扩展性差、无法聚合 api、无法 定义数据类型、网络请求次数多 GraphQL 的出现整好弥补了 RESTful APi 的不足 使用 GraphQL 的公司 目前已经有很多的公司使用...查询的返回结果就是输 入的查询结构的精确映射 客户端可以自定义 Api 聚合 如果设计的数据结构是从属的,直接就能在查询语句中指定;即使数据结构是独 立的,也可以查询语句中指定上下文,只需要一次网络请求...代码即是文档 GraphQL 会把 schema 定义和相关的注释生成可视化的文档,从而使得代码的变更,直接就反映到最新的文档,避免 RESTful 中手工维护可能会造成代码、 文档不一致的问题 参数类型强校验...' }) 可以打开 http://118.123.14.36:3002/graphql 控制台查看查询结果 src/main.js配置vue-apollo插件 import VueApollofrom'vue-apollo...组件加载的时候就会去服务器请求数据,请求的数据会放在navList这个属性上面,模板中可以直接使用当前属性 简单查询文档 带参数查询参考 import gql from'graphql-tag';

    5.2K42

    使用ASP.NET Core开发GraphQL服务器 -- 预备知识()

    schema里,每个数据点都有一个特定的类型,针对这个类型还有验证。 客户端定制查询GraphQL服务器提供了可以让客户端进行定制查询的能力。...结果以JSON形式返回,其数据包含在data属性下,结构和查询结构一致。 如果我还想在查询中包含浏览者的姓名,那就加一个字段即可: ? GraphQL查询也可以有注释: ?...当你输入一个字母之后,就是这种效果: ? 如果你什么都不输入,还想知道有哪些字段,那么就按Alt+空格: ? 但是windows多少还是有些问题的,因为Alt+空格也会弹出浏览器的菜单?。。。。...这些就是类型类型里,有的是常见的类型:例如String,Int,Float,Boolean,ID。...查询里使用fragment时需要用三个点"...",它的作用相当于js里的展开操作符,把fragment里面的字段展开到相应的查询里。 fragmentGraphQL里使用的非常多。 今天先到这。

    1.7K40

    GraphQL API渗透测试指南

    RESTful VS GraphQLGraphQL API与Rest API最大的区别在于:GraphQL 通过将数据查询和数据修改分离开来,使得客户端能够更灵活地控制所需数据的粒度和类型,并且多个资源之间建立关系...内省查询向未知API发送__schema字段使用自省来发现架构信息,该字段在所有查询的根类型都可用。...以获取服务器定义的所有类型、字段、敏感信息等。...或者是通过systemDiagnostics接受某些 UNIX 二进制文件作为调试目的的参数,例如 whoami、ps等,获取相关凭证或者权限之后,可以进行拼接来达到命令执行的目的。...会提示过多登陆尝试GraphQL对象不能够包含多个同名的属性,所以我们可以利用别名来实现多个同属性的操作,这样如果系统只限制了API请求速率,那么也可以通过别名查询来实现登陆爆破。

    1.2K30

    干货 | 携程基于 GraphQL 的前端 BFF 服务开发实践

    对 RESTful API 服务来说,每次接口调用的开销基本是稳定的。而 GraphQL 服务提供了强大的查询能力,每次查询的开销,取决于 GraphQL Query 语句查询的复杂度。...所有可能的查询路径都已被支持,新的数据消费场景,也无须开发新的接口字段,可以通过数据关联网络查询出来。 3.2 用 union 类型做错误处理 GraphQL 里做错误处理,有相当多的陷阱。...表达非空类型 开发 GraphQL 服务时,有个非常容易疏忽的地方,就是忘记给非空类型标记 !,导致客户端的查询结果在类型处处可能为空。 客户端判空成本高,对查询结果的结构也更难预测。...json 属性。...五、GraphQL 应用场景 作为 BFF 服务,解决单一接口快速接入之后,通常会回到聚合多个服务端接口这个最初的目的,下面是常见几种的串、并调用等应用场景。

    2.6K20

    graphql+koa2 前端bff层

    graphql查询优势在于前端可以主动控制字段的获取(只要这些字段是可以访问的)。集成graphql有两种方式。...那么这里定义了类型实现在哪里,实现就在resolvers中,每个类型定义resolver中都必须有解析器一一对应。...配置好后启动中间层服务,graphql查询生效之后会开启一个/graphql的路径接口,如果我们要使用graphql查询就请求/graphql这个路径。...id的列表,返回的是列表是因为我们类型定义的时候已经定义这个查询需要返回列表: type Query { exportList(params: QueryExportListParams...ExportItem这个类型之中我们都可以控制它取或者不取,如果你查询的参数服务端的graphql中未定义就会出错。

    12910

    新一代数据查询语言GraphQL来啦!

    Facebook工程师们希望能够移动应用和服务端的查询达到一致,最后使用的模型可以类似于NSObjects或者JSON那样的结构。...GraphQL是一种API查询语言,是一个对自定义类型系统执行查询的服务端运行环境 一个GraphQL查询是一个被发往服务端的字符串,该查询服务端被解释和执行后返回JSON数据给客户端。...GraphQL很自然的以对象和属性来表示数据之间的关系,这也是GraphQL的命名由来。 你可以简单的把GraphQL查询看成三部分。...每一级GraphQL查询都关联着一个特殊的类型,而每一种类型都描述了一组可用的字段集合。...GraphQL服务通过定义类型属性来创建,然后为在这些类型的每个属性创建函数。跟SQL类似,这使得GraphQL执行查询之前可以提供描述性的错误信息。

    2.9K70

    新一代数据查询语言GraphQL来啦!

    Facebook工程师们希望能够移动应用和服务端的查询达到一致,最后使用的模型可以类似于NSObjects或者JSON那样的结构。...GraphQL是一种API查询语言,是一个对自定义类型系统执行查询的服务端运行环境 一个GraphQL查询是一个被发往服务端的字符串,该查询服务端被解释和执行后返回JSON数据给客户端。...GraphQL很自然的以对象和属性来表示数据之间的关系,这也是GraphQL的命名由来。 你可以简单的把GraphQL查询看成三部分。...每一级GraphQL查询都关联着一个特殊的类型,而每一种类型都描述了一组可用的字段集合。...GraphQL服务通过定义类型属性来创建,然后为在这些类型的每个属性创建函数。跟SQL类似,这使得GraphQL执行查询之前可以提供描述性的错误信息。

    90330

    用TS+GraphQL查询SpaceX火箭发射数据

    通过使用 GraphQL,我们可以自动且自由地输入我们的 React 组件的属性。这样可以减少产品的错误并提高迭代速度。...由于这将通过用户交互动态生成,所以需要用到 GraphQL 变量。我们还可以 playground 测试带变量的查询。...查询名的后面,你可以通过使用前缀为$及类型去指定变量,然后查询体中,你可以使用该变量。对于我们的查询,通过传递 $id 变量来设置启动的id,该变量的类型为String!。 ?... query.ts 文件中,我们从 playground 粘贴前面的查询。...终端中执行: 1yarn codegen src/generated/graphql.ts 中,你将会找到定义程序所需的所有类型,以及获取 GraphQL 端点以检索该数据的相应查询

    3K20

    API架构风格对比:SOAP vs REST vs GraphQL vs RPC

    具有一定抽象的系统可以更好地封装其细节并维持其属性。这使得REST API足够灵活,可以保持系统稳定的同时,随时间进行演化。...REST的缺点 没有单一的REST结构:不存在正确地构建REST API的方式。如何对资源进行建模,以及对哪些资源建模取决于具体场景,这使得REST在理论是简单的,但实践是困难的。...在到达后端应用后,会有一个GraphQL操作,负责使用前端应用的数据来解析整个模式。在给服务端发送包含大量查询的请求之后,API会返回一个JSON响应,内容正对应请求的资源。 ?...详细的错误消息:与SOAP类似,GraphQL提供了详细的错误信息,错误信息包括所有的解析器以及特定的查询错误。 灵活的权限:GraphQL允许暴露特定的功能的同时保留隐私信息。...GraphQL 的缺点 性能问题:GraphQL用复杂度换来功能上的提升。一个请求中包含太多封装的字段可能会导致系统过载。因此,即时对于复杂的查询,REST仍然是一个比较好的选择。

    3K11

    GraphQL两年实战避坑经验

    鉴于现在 Public API 获取所有的 Schema,我们可以添加处理 order 属性的代码,扩展 Product 的 Schema。...这对于变更不存在问题,但并不适用于所有的查询,因为父对象和子对象只是 Public API 做拼接。为解决这个问题,我们需要再次重新编排配置,如下图所示: ?...这样,Gateway 可与后端服务部署同一网络,后端进行查询和变更时可直接使用 Gateway API。 查询分页(Paginated) 一些情况下,实现 查询分页 很有必要。...下面给出一些有助于构建可维护 GraphQL API 的小建议: 类型和枚举的命名必须唯一。...例如,如果需要对 Product 添加一个状态,建议命名为 ProductStatus,而不要直接使用 Status,以免出现类型冲突问题。 建议查询中添加过滤,以免额外单独编写查询

    1.1K30

    渗透中遇到GraphQL怎么搞?

    实际还是借助了面向对象的思想,graphql把每一种数据都给抽象成了一个类,例如咱们上面提到的两个接口,graphql中,这两个接口背后对应的数据就可以被抽象为Book类以及Author类 但是,这里说的类只是一个概念...咱们还需要借助一个类型 这个类型就是Query,Query类中我们可以定义各个查询接口: type Query { bookById(id: ID): Book authorById(...、__type,其实使用__schema就够用了 查询graphql中注册的所有类型: ?...可以看到成功查询出了bookById的查询的参数是id,返回类型是Book,然后我们去看一下Book的字段就知道bookByID可以查询哪些字段了: ?...Dos攻击 其实我上面给的案例的那种写法就存在着Dos隐患,问题出在两个类型互相关联,Book中有Author,Author中有Book,当数据量够大时,这样我们可以直接构造多层查询达到Dos效果 类似于

    3.4K41
    领券