REST-Based Model View Controller Pattern 解析
1. 同步与异步请求
同步客户端发出请求后会等待响应,而异步客户端能够同时发起多个请求并处理多个响应。异步客户端需要跟踪请求,并将查询标识符与已发布的查询进行交叉引用。区分同步请求和异步请求的关键在于是否使用查询标识符。
在 HTTP 请求定义中,相同的 URL(如 /search/query )可用于三种请求,其中两个用于异步接口,一个用于同步接口。区分异步和同步 HTTP GET 请求的是 HTTP 头 X-query-identifier ,即查询标识符。此外,异步 HTTP GET 请求不使用查询字符串。 X-query-identifier 也可以作为 HTTP 查询字符串的一部分,具体实现可根据需求决定。
2. 数据格式定义
2.1 基本数据格式
客户端和控制器之间使用同步或异步接口传输的数据格式应保持一致,这样可以避免不必要的复杂性。当发送相同表示形式的数据时,无论使用哪种接口,发送和接收的数据必须相同。
数据格式应定义为描述请求和结果所需的最少唯一数据,而不是所有本地客户端结果的最低公共分母。以搜索为例,请求所需的必要数据包括搜索引擎查询字符串,响应所需的必要数据包括标题、找到的链接的 URL 和简短描述。
以下是一个响应数据格式的 XML 示例:
<results>
<result>
超级会员免费看
订阅专栏 解锁全文
659

被折叠的 条评论
为什么被折叠?



