小编给大家分享一下创建安全节点。js GraphQL API的方法是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!
本文的目标是提供关于如何创建安全的节点。js GraphQL API的快速指南。
你可能会想到一些问题:
- <李>使用GraphQL API的目的是什么?李> <>李什么是GraphQL API ?李> <>李什么是GraphQL查询?李> <>李GraphQL的好处是什么?李> <>李GraphQL是否优于休息?李> <>李为什么我们使用节点。李js ? >
这些问题都是有意义的,但在回答之前,我们应该深入了解当前网络开发的状态:
- <李>现在几乎所有的解决方案都使用了某种应用程序编程接口(API)。李> <李>即使你只用社交网络(如Facebook或Instagram),仍然会用到使用API的前端。李> <李>如果你感到好奇,你会发现几乎所有在线娱乐服务都在用不同类型的API,包括Netflix, Spotify和YouTube等。李>
你会发现几乎在每种情况下都会有一个不需要你去详细了解的API,例如你不需要知道它们是怎样构建的,并且不需要使用与他们相同的技术就能够将其集成到你自己的系统中.API允许你提供一种可以在服务器和客户端通信之间进行通用标准通信的方式,而不必依赖于特定的技术栈。
通过结构良好的API,可以拥有可靠,可维护且可扩展的API,可以为多种客户端和前端应用提供服务。
什么是GraphQL API ?
GraphQL是一种API所使用的查询语言,由Facebook开发并用于其内部项目,并于2015年公开发布。它支持读取,写入和实时更新等操作,同时它也是开源的,通常会与其他和其他架构放在一起进行比较,简而言之,它基于:
- <李> <强> GraphQL查询强>,——允许客户端进行读取和控制接收数据的方式。李> <李> <强> GraphQL修改强>,——描述怎样在服务器上写入数据。关于怎样将数据写入系统的GraphQL约定。李>
虽然本文应该展示一个关于如何构建和使用GraphQL API的简单但真实的场景,但我们不会去详细介绍GraphQL。因为GraphQL团队提供了全面的文档,并在介绍GraphQL中列出了几个最佳实践。
什么是GraphQL查询吗?
如上所述,查询是客户端从API读取和操作数据的一种方式。你可以传递对象的类型,并选择要接收的字段类型。下面是一个简单的查询:
查询{ 用户{ firstName, 姓 } }
我们尝试从用户库中查询所有用户,但只接收<代码> firstName 代码>和<代码> lastName> 代码。此查询的结果将类似于:
{ “data": { “users":( { “firstName":“Marcos" “lastName":“Silva" }, { “firstName":“Paulo" “lastName":“Silva" } ] } }
客户端的使用非常简单。
使用GraphQL API的目的是什么?
创建API的目的是使自己的软件具有可以被其他外部服务集成的能力,即使你的程序被单个前端程序所使用,也可以将此前端视为外部服务,为此,当通过API为两者之间提供通信时,你能够在不同的项目中工作。
如果你在一个大型团队中工作,可以将其拆分为创建前端和后端团队,从而允许他们使用相同的技术,并使他们的工作更轻松。
在本文中,我们将重点介绍怎样构建使用GraphQL API的框架。
GraphQL比休息更好吗?
GraphQL是一种适合多种情况的方法。休息是一种体系结构方法。如今,有大量的文章可以解释为什么一个比另一个好,或者为什么你应该只使用休息而不是GraphQL。另外你可以通过多种方式在内部使用GraphQL,并将API的端点维护为基于剩下的架构。
你应该做的是了解每种方法的好处,分析自己正在创建的解决方案,评估你的团队使用解决方案的舒适程度,并评估你是否能够指导你的团队快速掌握这些技术。
本文更偏重于实用指南,而不是GraphQL和其他的主观比较,如果你想查看这两者的详细比较,我建议你查看我们的另一篇文章,为什么GraphQL是API的未来。
在今天的文章中,我们将专注于怎样用节点。js创建GraphQL API。
为什么要使用Node . js ?
GraphQL有好几个不同的支持库可供使用。出于本文的目的,我们决定使用Node . js环境下的库,因为它的应用非常广泛,并且节点。js允许开发人员使用他们熟悉的前端语法进行服务器端开发。