繁体   English   中英

Apollo graphQL 输入中不支持的令牌

[英]Apollo graphQL unsupported token in input

我正在使用 Apollo Android GraphQL(Gradle 插件版本 1.2.1)将数据发布到服务器。 我已经从服务器下载了 schema.json 文件并编写了一个带有突变的.graphql 文件。 为了从应用程序传递对象,我定义了一些输入对象,如下所示。

input Location {
    lat: Float!
    lon: Float!
}

input SensorParams {
    sources: [Int]
    exposition: Float
    location: Location!
}

mutation InsertSessionResults(
    $location: Location!) {
    insertSession(session: {
        name: $name
    }) {
        id
    }
}

但是,当我构建应用程序时,出现以下错误:无法解析 GraphQL 文件。 不支持的令牌'!'

如果我从位置中删除“,”。 该过程对“[”字符给出了相同的错误。

阅读文档我了解输入定义中允许这两个字符分别请求非空值和设置列表类型,那么可能导致错误的原因是什么?

无需在前端编写类型定义,只需将查询编写为字符串即可。 输入类型在服务器上的模式中定义。

正如@Xizam 上面已经回答的那样,您不需要在 android 前端编写的文件。 事实上删除它。 只要您有架构和 YourQueries.graphql 文件(包含您决定在应用程序中进行的查询和突变),构建项目并且它会运行良好。

Android studio 将在活动 class 中声明它们时识别您的突变。

遵循这个简单的教程: 这里

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM