天天看点

第一次学习graph ql

REST API 是一种架构风格,而 GraphQL 是一种查询语言。

GraphQL 服务器可用于多种语言,例如Java、Python

不是nosql,Neo4j用的Cypher语言才是

https://www.fullstacktutorials.com/interviews/graphql-interview-questions-57.html

GraphQL 只有一个带有 POST 方法的端点。但是可以处理更加复杂的请求。

REST 可以有许多具有 GET、POST、PUT、PATCH 方法的端点。

在 GraphQL 中,Mutation 用于更改数据。例如 - 创建、更新和删除数据。

在 GraphQL 中,订阅用于监听任何数据变化。

例如 -如果客户端订阅了该事件,服务器将在任何数据更改时通知客户端。

Resolver 是一个函数,用于处理图形查询并为 graphql 查询生成响应。

如何保护 GraphQL 查询?设置查询超时

GraphQL 的缺点是什么?

缓存 - GraphQL 不如 REST,尤其是 HTTP 缓存。

查询复杂度。

operations是查询语句,variables是具体要制定的变量数值,参考:https://www.apollographql.com/blog/graphql/examples/what-is-a-graphql-query-graphql-query-using-apollo-explorer/

Over-Fetching 和 Under-fetching 都是使用 GraphQL 可以解决的性能问题。如果您拥有准确的端点来为您的产品提供完全正确的数据,您就不会看到这些问题。

继续阅读