一、为什么是Web API?
Web API是网络应用程序接口。包含了广泛的功能,网络应用通过API接口,可以实现存储服务、消息服务、计算服务等能力,利用这些能力可以进行开发出强大功能的web应用。
二、web平台归为7个基本设施,其间的线索是这些产品都提供了API,分别是:
1)存储服务:存储服务关注抽象化和虚拟化存储。
2)openemy服务:它提供了类似于文件系统接口的api,但增加了给文件标签的能力。
3)消息服务:消息服务在概念上类似于传统意义上的中间件。
4)计算服务:目前还没有一个一般的可以通过api访问的web计算服务黑盒,但有不少技术指向这个方向。
5)信息服务:信息服务提供海量特定的信息。
6)搜索服务:因为搜索在web领域的基础和统治地位,搜索服务构成了新的web基础架构的关键部分。
7)web2.0服务:最后一类宽泛的叫它们web2.0服务。
webservice接口和restful接口哪个更好?
REST是一种架构风格,其核心是面向资源,遵循CRUD原则,这个原则告诉我们对于资源只需要4种行为,分别是:创建,获取,更新和删除,并且这些资源执行的操作时通过HTTP协议规定的,而WebService底层是SOAP协议,核心是面向活动,有严格的规范和标准,包括安全,事务等方面。
那么我们是使用RESTful还是WebService就需要考虑资源本身的 ,看资源本身是那种简单的类似增删改查的业务操作,还是那种比较复杂,如转账,事务处理等。其次是看是否有严格的规范和标准的,而且有多个业务系统集成和开发的时候,我们使用SOAP协议就比较优势,如果是简单的数据操作,无事务处理,开发和调用比较简单的话使用REST架构风格比较有优势,较为复杂的面向活动的服务,我们使用REST意义不大。
httpclient可以跨语言调用第三方接口吗?怎么做?
对于各类开发者而言,在日常工作中经常会遇到调用第三方API的场景,因为API有很多种实现方式,不同实现方式则客户端调用方式也不同。但可以很明确的告诉你,HttpClient是可以跨语言调用第三方接口的。
常见接口形式(分类)有哪些?
API作为应用程序编程接口,可以使用不同的编程语言进行API的开发,另外接口的表现形式也不同,现在最常用的接口形式有以下这些:
1、HTTP 接口(RESTful)
基于HTTP协议开发的接口现在应用是最为广泛的,这类API使用起来简单明了,因为它是轻量级的、跨平台、跨语言的,但凡是第三方提供的API都会有HTTP版本的接口。
RESTful API也是基于HTTP协议的,只不过RESTful它并不是一种规范,它是一种设计准则,用不同的HTTP动词(GET、POST、DELETE、PUT等)来表达不同的请求。
2、RPC 接口
RPC技术是指远程过程调用,它本质上是一种Client/Server模式,可以像调用本地方法一样去调用远程服务器上的方法,它支持多种协议(如:HTTP、TCP、UDP、自定协议)和多种数据传输方式(如:Json、XML、Binary、Protobuf等)。
3、Web Service 接口
Web Service其实是一种概念,我们可以将以WEB形式提供的服务称为Web Service,所以像RESTful、XML-RPC、SOAP等都可以当成是Web Service的一种实现方式。
不过Web Service接口和HTTP接口存在一些细小区别就是,Web Service接口支持更复杂的对象,而HTTP接口更多的就是传输字符串或者JSON文本。
HttpClient是啥?能否跨平台调用?
HttpClient通指HTTP协议的客户端工具包,通俗理解就是通过HttpClient客户端可以对所有的HTTP资源进行请求操作。现在主流的编程语言都有自己的HttpClient工具包,虽然名称未必就叫“HttpClient”!
因为HTTP协议就是跨语言的,所以通过HttpClient可以跨语言调用第三方的API。比如你的项目使用的是PHP开发的,对方提供的HTTP API是Java开发的,调用是不存在问题的!
以上就是我的观点,对于这个问题大家是怎么看待的呢?欢迎在下方评论区交流 ~ 我是科技领域创作者,十年互联网从业经验,欢迎关注我了解更多科技知识!