ruby-on-rails 当我们可以手动将数据传递到请求体时,预取GraphQL模式有什么好处?

yqkkidmi  于 5个月前  发布在  Ruby
关注(0)|答案(1)|浏览(46)

前言:我对GraphQL完全陌生,所以我只是想弄清楚使用它时的最佳实践是什么
所以我需要调用一个用Nestjs编写的GraphQL API(更具体地说,从Rails服务器)。有一个很好的gem graphql-client,它使Client与GraphQL API通信。为了让它工作,它需要一个Schema初始化Client之前。它还建议我们应该在**之前获取模式并将其转储到文件中。初始化Client
我还注意到,当我将GraphQL URL粘贴到postman时,它会预取模式。
一个快速的代码片段起作用了,但后来我发现我可以使用一个API gem(如HTTParty)并使用正确的主体发出POST请求,以便调用GraphQL API
我想:“也许我应该研究一下其他JS工具是如何与GraphQL一起工作的,因为Rails可能会有不同的行为”。然后我读了this article。简而言之,我们可以只使用一个API库(如axios)向GraphQL服务器发出请求,而不需要或预取模式。
我的问题是:为什么我们需要在提出请求之前预取模式?这样做有什么好处?如果有什么文章我应该阅读,以便更好地了解这一点,请提供给我。

ikfrs5lh

ikfrs5lh1#

你永远不需要在运行时获取模式。然而,在客户端获取模式来定义 * 类型 * 是很有用的,这些类型与服务器在运行时请求数据时将要发送给你的类型相匹配。

相关问题