You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Hasura Actions中使用自定义对象输入类型?

Hasura 完全支持自定义输入类型,你遇到的400报错是不符合GraphQL基础语法规范导致的,并非Hasura的功能限制。

  • GraphQL 规范明确要求仅用 input 关键字声明的类型可作为输入参数使用,你当前定义的 UserInfo 是用 type 声明的输出类型,天然不能用于输入字段的类型声明。

你需要额外定义一个输入专用的同结构类型即可,完整的类型定义参考如下:

# 输入专用的UserInfo类型
input UserInfoInput {
  accessToken: String!
  userId: Int!
}

# 引用自定义输入类型的PurchaseInput
input PurchaseInput {
    user: UserInfoInput!
}

# 原有输出用的UserInfo类型可正常保留,两者互不冲突
type UserInfo {
  accessToken: String!
  userId: Int!
}

除了单层嵌套自定义输入类型外,Hasura也支持输入类型的多层嵌套、输入类型数组等用法,不存在仅能使用基础类型的限制。


内容的提问来源于stack exchange,提问作者f7n

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 16:54:01