API(应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节¹⁶。API可以是HTTP协议的,也可以是其他协议³。


API链接通常是前端和后端的桥梁。后端计算出结果或者要展示什么数据,就设计一个数据接口 (API),前端人员(可以理解成制作网页页面的人)调用这个接口,即可获取数据,将数据展示到页面上⁵。这种API一般以URL形式存在,有些API不仅在网站内部使用,而且也向外界提供,我们可以通过访问这些URL来获取数据⁵。


URL(统一资源定位符)是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址³⁴。URL API 是一个 URL 标准的组件,它定义了有效的 Uniform Resource Locator 和访问、操作 URL 的 API。URL 标准还定义了像域名、主机和 IP 地址等概念⁴。


IP地址是网络上每一个节点必须具备的,每个计算机必须有一个 IP 地址才能够连入因特网。每个 IP 包必须有一个地址才能够发送到另一台计算机⁶。IP是无连接的通信协议,它不会占用两个正在通信的计算机之间的通信线路,降低了对网络线路的需求⁶。


总的来说,API链接、IP和网址都是网络通信中的重要组成部分,它们各自承担着不同的角色,共同支持着网络的正常运行。API链接提供了一种机制,使得不同的软件系统能够相互通信;IP地址为网络中的每一个节点提供了唯一的标识;而网址(URL)则为互联网上的资源提供了一种定位方式。这三者之间的关系可以理解为:API链接是通信的桥梁,IP是通信的参与者,网址是通信的内容。


源: 与必应的对话, 2023/12/30

(1) API是什么: 一篇讲透API - 知乎. https://zhuanlan.zhihu.com/p/347125981.

(2) Tcp IP OSI Rest API 协议 知识点 - 知乎. https://zhuanlan.zhihu.com/p/265417444.

(3) url接入与api接入有什么区别? - 知乎. https://www.zhihu.com/question/284620848.

(4) 爬虫与API(上) - 知乎. https://zhuanlan.zhihu.com/p/36260167.

(5) URL API - Web API 接口参考 | MDN - MDN Web Docs. https://developer.mozilla.org/zh-CN/docs/Web/API/URL_API.

(6) 想问一下什么是API,具体是什么意思? - 知乎. https://www.zhihu.com/question/38594466.

(7) socket和TCP/IP协议族的关系-腾讯云开发者社区-腾讯云. https://cloud.tencent.com/developer/article/2105926.

(8) TCP、HTTP、SOCKET之间的关系 - CSDN博客. https://blog.csdn.net/P_knight/article/details/109627282.

(9) undefined. http://www.didi.com/taxi.

(10) undefined. https://mysite.com/login.

(11) undefined. https://mysite.com/login?user=someguy&page=news.

(12) undefined. https://url-api.glitch.me?from=mdn&excitement=high&likelihood=inconceivable.

(13) undefined. http://example.com/resources/.



例程是某个系统对外提供的功能接口或服务的集合¹。比如操作系统的API、服务等就是例程;Delphi或C++Builder提供的标准函数和库函数等也是例程¹。我们编写一个DLL的时候,里面的输出函数就是这个DLL的例程¹。


例程的作用类似于函数,但含义更为丰富一些¹。你可以把一段相对独立的代码写成单独的一个模块,这就是函数的概念。我们可以在自己的程序中编写很多个函数,从而实现模块化编程。但这些模块或者说函数并不一定向外输出(即提供给别的程序使用),只用于当前这个程序里面。此时这些函数就仅仅具有独立函数的意义,但不是例程¹。


但如果我们把这些函数编写为DLL动态库的输出函数的话,此时虽然对于编写这个DLL的程序员来讲,仍然可以用函数的概念来理解这些DLL提供的功能,但对于以后调用这个DLL的程序来说,DLL里面提供的输出函数(或者说服务)就是例程了¹。


因此,“例程”的基本概念就包含了“例行事务性子程序”的含义,既然是例行的事务子程序,则必然通用性和相对独立性都比较强,所以很适合通过DLL、静态库(各种编程语言里面的库函数)、API、操作系统服务等方式来实现¹。希望这些信息对你有所帮助!


源: 与必应的对话, 2023/12/30

(1) 例程_百度百科. https://baike.baidu.com/item/%E4%BE%8B%E7%A8%8B/2390628.

(2) 例程、过程、函数的区别是啥? - 知乎. https://www.zhihu.com/question/346673491.

(3) 什么是例程?_例程是什么意思-CSDN博客. https://blog.csdn.net/scyatcs/article/details/77452336.