开放API 与 查询语言GraphQL

举报
小哈里 发表于 2022/05/07 00:30:42 2022/05/07
【摘要】 1、开放API 什么是API? API(Application Programming Interface,应用程序接口)是一些预先定义的接口(如函数、HTTP接口),或指软件系统不同组成部分衔接的约...

1、开放API

  • 什么是API?
    API(Application Programming Interface,应用程序接口)是一些预先定义的接口(如函数、HTTP接口),或指软件系统不同组成部分衔接的约定。用来提供应用程序与开发人员基于某软件或硬件得以访问的一组例程,而又无需访问源码,或理解内部工作机制的细节。

  • 什么是SDK?
    软件开发工具包,SDK是一系列文件的组合,包括lib、dll、.h、文档、示例等等;API是对程序而言的,提供用户编程时的接口,即一系列模块化的类和函数。可以认为API是包含在SDK中的。
    有公司开发出某种软件的某一功能,把它封装成SDK(比如数据分析SDK就是能够实现数据分析功能的SDK),出售给其他公司做开发用,其他公司如果想要给软件开发出某种功能,但又不想从头开始搞开发,直接付钱省事。

  • API与SDK的关系?
    把SDK想象成一个虚拟的程序包,在这个程序包中有一份做好的软件功能,这份程序包几乎是全封闭的,只有一个小小接口可以联通外界,这个接口就是API。
    比如我们现在要在企业ERP系统中增加某个功能(比如自动备份、数据分析、云存储等),但又不想耗费大量时间、也没那么多研发亲自去做这个功能。这时我们可以选择使用这个“SDK”软件包,把ERP系统连接上API接口,就可以使用SDK软件包里的功能。

  • 国内外常用精品API接口汇总
    https://blog.csdn.net/qq_38188485/article/details/83992741

2、查询语言GraphQL

GraphQL是什么?

  • 是一种用于 API 的查询语言,是一个使用基于类型系统来执行查询的服务端运行时(类型系统由你的数据定义)。即 ask exactly what you want。

为什么要用GraphQL?

  • 在实际工作中往往会有这种情景出现:比如说我需要展示一个游戏名的列表,可接口却会把游戏的详细玩法,更新时间,创建者等各种各样的 (无用的) 信息都一同返回。
  • 原因是因为,后端为了兼容PC端和移动端用同一套接口,且需求经常改动导致接口很难为单一接口精简逻辑。
    如果不同平台不同接口或者加参数会极大地增加后端的压力。
  • GraphQL随之出现,可以做到只看一部分。
    入门参考:https://blog.csdn.net/qq_41882147/article/details/82966783

文章来源: gwj1314.blog.csdn.net,作者:小哈里,版权归原作者所有,如需转载,请联系作者。

原文链接:gwj1314.blog.csdn.net/article/details/122794366

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。