适用于iOS的GraphQL客户端库

poh*_*ohl 20 rest json ios graphql

我有一个GraphQL服务,我需要从iOS应用程序中获取,我正在尝试调查我的选项是针对此目的的客户端库.我最初的印象是,没有很多好的选择,我对此感到有些惊讶,因为Facebook的移动应用程序总是被引用为GraphQL本身的动机材料.

以下是我目前对我的选择的理解.我的问题是:我可以忽略哪些客户端库选项?我也很好奇你是否想象出适合iOS的理想GraphQL客户端库,它看起来像什么?

  1. 只需Alamofire,AFNetworking,或者NSURLSession直接传递精心制作的手工制作的查询文档,并通过Dictionary代表生成的JSON进行洞察,或者
  2. 切斯特
  3. GraphQLicious
  4. 斯威夫特 - GraphQL

nbu*_*urk 10

很久以前就提出了这个问题 - 我认为今天标准的答案是使用Apollo Client.

它使用与Web上的Apollo Client类似的API,并具有几个非常好的功能:

  • 基于GraphQL查询和突变的静态类型生成
  • 规范化缓存
  • 查询观看和自动UI更新
  • 手动商店更新

它尚未达到1.0,但整体上是一个超级有前途的项目!

以下是一些可以帮助您入门的资源:


Vik*_*Vik 8

我不会手工构建查询,我认为Chester和GraphQLicious都适合你.如果我不得不想象完美的库,它不仅应该构建查询,还应该将结果解析为Swift对象.正如您可能从JSON解析库中了解到的那样,这不是一项小任务,这就是为什么大多数GraphQL-Builder库都不这样做的原因.

披露:我是GraphQLicious背后的人之一