您准备好观看GraphQL了吗?

在上一篇文章中,我们讨论了GraphQL与REST相比的优势。 在本文中,我们将看到GraphQL的实际应用。 我创建了一个示例应用程序来展示REST和GraphQL之间的差异。 首先,我们将看到简单产品详细信息终点的REST实现。 我已经使用Spring Boot演示REST。 下载示例项目,并按照README中概述的步骤设置项目。 我不在这里讨论设置细节,因为它超出了本文的范围。 假设您的项目已启动并正在运行,以调用http:// localhost:8080 / product / {product_id}端点以获取产品详细信息JSON,如下所示。

GraphQL

如果您在JSON之上看到,虽然我们对给定产品的所有元素都不感兴趣,但我们正在获取包括评论和技术规格在内的整个产品JSON。

现在,我们将通过有选择地获取产品详细信息来了解GraphQL的实际应用。 为了再次演示GraphQL,我使用了Spring Boot。 下载示例项目,并按照README中概述的步骤设置项目。 我不在这里讨论设置细节,因为它超出了本文的范围。 假设您的项目已启动并正在运行,以查看GraphQL的实际效果。 在这种情况下,我只想获取给定产品的产品ID,标题,简短描述和标价。 让我们看看如何查询以获得感兴趣的详细信息。

GraphQL

现在,作为服务消费者,我有兴趣获取产品ID,标题,简短描述,标价和评论。 在这种情况下,GraphQL提供了查询所需内容的灵活性。 当我们使用GraphQL时,请参见下面的查询和响应。

GraphQL

为了演示GraphQL,我使用了基于GUI的插件GraphiQL。 为了从其他应用程序消费,我们可以在application.properties中配置端点。

graphql.servlet.mapping=/graphql
graphql.servlet.enabled=true
graphql.servlet.corsEnabled=true

现在,我们可以通过传递URL编码的查询参数来调用上述端点,如下所示。 您可以了解有关查询和变异的更多信息https://graphql.org/learn/queries/

GraphQL

希望您喜欢这篇文章。 我将再来另一篇文章。 直到那时, 快乐学习!!!

翻译自: https://www.javacodegeeks.com/2019/03/ready-see-graphql-action.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值