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

Go调用WikiJS GraphQL API时String!转[String!]类型转换问题咨询

问题原因

你调用的WikiJS GraphQL接口中,list查询的tags参数类型定义为[String!](非空字符串数组),但你传参时传入的是单个String!类型值,类型不匹配触发报错。

解决方法

把传入的tags参数改成graphql.String类型的切片即可,对应修改variables部分代码:

variables := map[string]interface{}{
    "tags": []graphql.String{graphql.String(tag)},
}

如果需要传入多个标签,按如下格式拼接即可:

variables := map[string]interface{}{
    "tags": []graphql.String{
        graphql.String(tag1),
        graphql.String(tag2),
        // 按需补充更多标签
    },
}

额外注意

你当前定义的查询结构体中,id字段首字母为小写,Go语言反射无法读取私有字段,会导致返回结果无法正常赋值,建议修改为大写:

var query struct{
    Pages struct{
        List struct{
            ID graphql.Int // 首字母大写
        }`graphql:"list(tags: $tags)"`
    }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 01:09:00