首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Graphiql中标记为非空的所有字段和参数: Sangria,scala

在Graphiql中标记为非空的所有字段和参数: Sangria,scala
EN

Stack Overflow用户
提问于 2020-05-08 16:36:07
回答 1查看 531关注 0票数 0

我无法使用postman查询用scala编写的使用sangria库编写的graphql服务器。如果我使用内容类型作为"application-json“,如果我使用纯文本,则不支持内容类型,我会在postman中得到一个请求格式错误。我使用的邮递员版本是6.2.4版本。代码非常简单,我从hbase读取数据。我使用sangria宏函数deriveObjectTypeUnit,myCaseClass来定义对象。但是,我可以通过将graphiql.html文件从资源连接到创建的路由来使用graphiql控制台。graphiql控制台的问题是,它将所有参数和字段标记为非空(在默认情况下不应该是非空的),所有字段在graphql中都是可空的。我在graphiql控制台的documentation选项卡中检查了这个选项,在这里我可以看到我的所有字段,参数被标记为非空(后缀为感叹号!)。示例查询如下:

代码语言:javascript
复制
{
  hBaseTable(date: "2019-11-21", key: "10100003071234") {
    RowKey
    DateOfInt
  }
}

我的问题是如何在sangria中设置默认的空值,以及graphql如何支持postman 6,而不支持scala实现。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-08 18:22:09

默认情况下,字段在GraphQL模式中可能为空,但在Scala中,null几乎总是编程错误(当然,如果您将它们作为参数传递或返回)--您希望使用Option显式地对它们进行建模。如果您想坚持GraphQL约定,只需将案例类中的所有字段写成Optional即可。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61683745

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档