web服务是基于哪个协议:主流协议及适用场景
web服务核心基于HTTP/HTTPS协议实现数据交互,同时可搭配SOAP、REST、XML-RPC等衍生协议构建服务接口,大多数通用互联网web服务以HTTPS为核心传输协议,局域网内网轻量化web服务可直接使用HTTP协议,复杂企业级异构系统对接场景更适配SOAP协议,轻量化前后端交互、移动端web服务优先选用REST协议。
web服务核心基础传输协议
HTTP超文本传输协议是所有web服务的底层基础协议,属于应用层协议,依托TCP传输控制协议完成数据可靠传输,默认使用80端口通信。该协议采用客户端请求、服务端响应的一问一答模式,无状态传输机制让web服务无需持续保存用户连接数据,大幅降低服务器运行负载,适配网页访问、接口调用、资源加载等绝大多数基础web服务场景。HTTP协议遵循RFC9110官方标准规范,明确规定了请求方法、状态码、报文格式等统一技术标准,是全球web服务通用的底层规范。
HTTPS协议是HTTP的加密安全版本,在HTTP与TCP之间加入SSL/TLS加密层,默认使用443端口。其核心作用是对web服务的传输数据进行加密校验,有效防范数据窃听、篡改、中间人攻击等网络风险,目前主流公开互联网web服务、电商支付、用户登录、数据查询等涉及隐私和敏感信息的服务,均强制使用HTTPS协议,是当下web服务的主流标准传输协议。
web服务常用接口交互协议
SOAP简单对象访问协议是面向企业级web服务的专用交互协议,基于XML格式封装传输数据,可依托HTTP、SMTP等多种底层协议运行。该协议具备严格的格式规范、错误处理机制和事务一致性保障,适合金融、政务、大型企业ERP系统等对数据准确性、安全性、兼容性要求较高的web服务对接场景,能够适配不同编程语言、不同架构的异构系统互联互通。
REST表述性状态转移协议并非强制性制式协议,而是一套基于HTTP/HTTPS的web服务设计规范,行业内普遍将遵循该规范的web服务称为RESTful服务。其摒弃了复杂的XML封装,优先使用JSON轻量化数据格式,支持GET、POST、PUT、DELETE等标准HTTP请求方法,结构简洁、传输速度快、开发成本低,是移动端APP、小程序、前端网站等轻量化web服务的首选交互方式。
主流web服务协议对比
| 协议类型 | 传输格式 | 安全等级 | 适用场景 | 传输效率 |
|---|---|---|---|---|
| HTTP | 明文文本 | 较低 | 内网测试、静态资源展示 | 较高 |
| HTTPS | 加密文本 | 高 | 互联网公开web服务、敏感数据交互 | 中等 |
| SOAP | XML | 高 | 企业级异构系统、金融政务服务 | 较低 |
| REST | JSON为主 | 中等 | 移动端、前后端分离web服务 | 高 |
老旧小型web服务可适配XML-RPC协议,这是早期轻量化web服务协议,结构简单但功能单一,仅支持基础数据传输,目前已基本被REST协议替代,仅少量老旧存量系统仍在使用。
该协议体系的适用边界是仅针对通用互联网与企业局域网web服务,工业场景的工业web服务、物联网专用web服务,会基于MQTT、CoAP等专用协议运行,不适用上述常规web服务协议体系。
内网测试场景优先用HTTP协议。
