Graphql-SQL不同

本文探讨了GraphQL的特点,如按需获取数据、单次请求获取多个资源以及易于维护的系统描述。对比RESTful,GraphQL允许一次获取多个资源,通过类型而非URL区分资源。在使用GraphQL时,需构建schema定义查询和类型,并设置resolver处理查询。文中还介绍了如何进行字段查询、嵌套查询、使用查询参数、避免同名冲突、复用查询片段以及进行数据修改的操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

GraphQL

特点:
1.请求需要的数据,不多不少。(Restful会返回所有的数据)
2.获取多个资源,只用一个请求
3.描述所有可能类型的系统,便于维护。

GraphQL与restful的对比
1.restful一个接口只能返回一个资源,graphql一次可以获得多个资源
2.restful用不同的url来区分资源,graphql用类型区分资源

使用express+GraphQL需要注意
构建schema,这里定义查询的语句和类型

var schema=bulidSchema(
	type Query{
   
	hello: String
	}
);

定义查询所对应的resolver,也就是查询对应的处理器

var root ={
   
	hello :() =>{
   
		return "Hello world!";
	},
};

Fields:查询一个对象的字段
1.在对象上面选取字段,如果返回的还是对象,那么可以在这个字段里面进行查询。在restful里面查询可能就会返回所有的字段。
2.还可以进行嵌套查询

举例
查询条件

{
   
  hero{
   
    name
    friends{
   
      name
    }
  }
}

返回的数据

{
   
  "data"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值