RESTful原理与实践
南北向:
南向:上层系统提供给下层系统的接口
北向:下层系统提供给上层系统的接口
接口提供交互功能,实现数据传输


北向接口的发展:


规范URI命名
URI(Universal Resource Identify)统一资源标识符,标记资源具体位置

无状态设计
·有状态:服务端需要保存和维护先前请求的状态信息,后面的每一个状态都依赖先前状态
·无状态:服务端每次对相同的请求,函数或方法调用都给出相同的响应,不依赖于其他请求,服务端不需要维护状态信息,更易扩展,每个资源都可寻址,至少有一个URI对其定位
状态化请求:服务器段一般都要保存请求的相关信息,每个请求可以默认地使用以前的请求信息
无状态请求:服务器段的处理结果必须全部来自于一次请求所携带的信息

前后端分离:
·前段涉及用户能看到的界面
·后端涉及数据处理的逻辑功能







REST(representational State Transfer)表现层状态转化,是一种设计风格
REST作为客户端-服务器的交互框架,具有三个概念
·资源:
一个信息实体,网络上所有事物都可以被抽象为资源,每个资源有一个唯一的资源标识符
REST核心在于资源和操作,用URI定位资源,用HTTP动作描述操作
·表现层:
资源具体呈现出来的形式叫表现层
URI只代表资源的实体,不代表资源的形式
·状态转化
访问一个URI代表了客户端和服务器的一个互动过程,在这个过程中,势必设计导数据和状态的边喝
互联网通信协议HTTP 是一个无状态协议,这以为这所有的状态都保存在服务器端,客户端不保存状态,因此客户端通过某种手段操作服务器,让服务器端发生状态变化,这种转化依赖表现层,是表现层状态转化
客户端用到的某种手段就是HTTP

RESTful和RESTCONF


RESTful接口的定义


HTTP工作原理:







客户端发送的请求消息包括
·请求行:由请求方法字段、URI字段和HTTP协议版本字段组成
请求方法:常见的GET/POST等,HTTP客户程序向服务器发送请求时候必须指明 请求类型

URI:统一资源标识符
协议版本:在允许发送方指示消息的格式和理解后续HTTPP通信的能力

·请求头部:允许客户端向服务器传递关于请求的附加信息,这些字段充当请求修饰符,相当 于变成语言方法调用中的参数



·空行:通过一个空行告诉服务器请求头部到此为止
·请求数据:若方法字段为GET则此项为空,没有数据,若方法字段是POST则通常来说此处防止的是要提交的数据

服务器响应消息
HTTP响应消息由四个部分组成

·状态行:由协议版本、状态码、原因短语组成,每个元素用空格分离
协议版本:允许发送方指示消息的格式及理解后续HTTP通信能力
状态码:一个3位整数结果码,用于向客户端返回操作结果
原因短语:对状态码进行简短的文本描述


·响应头部:允许服务器传递关于响应的附加信息,提供了关于服务器的相关信息以及URI所标 识资源的信息

响应头用于描述服务器及数据的基本信息。服务器通过响应头,可以通知客户端如 何处理后续它回复的数据


·空行:同上,告客户端,响应头部到此为止
·响应正文:响应的消息体,如果客户端请求数据类型是纯数据则返回纯数据,如果请求HTML页面则返回HTML代码

客户端请求报文:

服务器响应消息:

HTTPS:安全超文本传输协议,在HTTP基础加入SSL/TLS层加密HTTP协议

SSL(Secure Sockets Layer 安全套结字)及TLS(Transport Layer Security传输层安全)是为网络通信提供安全及数据完整性的一种安全协议
TLS是SSL的标准化后的产物,SSL与TLS在传输层于应用层之间对网络连接进行加密,不影响原有的TCP协议和HTTP协议,所以使用HTTPS不需要对HTTP页面进行太多改造

HTTP/2




调用RESTful接口获得Token(认证Token 为字符串,用于API的鉴权 认证)









更新: 2025-03-14 10:53:45
原文: https://www.yuque.com/yuhui.net/network/mnbcpirwzqv696iu

评论(0)
暂无评论