编码、格式与网络通信
数据的网络分层模型;
网络通信应用层数据处理 |
|
UI层:VO(View Object) 文本、image、音视频流 |
信息展示:文字、多媒体;布局; 用户交互;dev、css、js |
Model层 |
Bean、model,hashmap、dictoary,image |
网络接口层 |
Json、xml |
网络传输、文件存贮 |
bytes、bytes+数据结构; 多媒体信息的数据能够直接转化为model或UI层对象 |
往下:7层模型、网络传输、链路、物理层。
text/html; charset=utf-8
一、编码(文字部分)
1、编码演进史;
2、编解码指示与网络通用语言:ascii(网络通信的指示部分统一使用ascii)。
3、urlencode陷阱。
text/html; charset=utf-8
二、格式
格式本质:要素+数据结构;
是多媒体信息的存在形式。文件和数据流形式的多媒体信息都有格式信息。
进程理解文件的过程(文件格式未给出):
1)加载文件到内存。
2)读取文件头、判断文件格式,寻找合适的工具打开。
在http通信过程中,使用content-type来识别。
三、数据交换格式
1、目标:屏蔽不同平台数据模型的不一致,给网络接口层面统一的格式。
2、标准:要素完备、类型完备、结构信息完备。
Json与xml的比较:
Json:轻便、可读性好;
Xml:用户可编辑性好,可用作配置文件。
四、多媒体混合通信
解决方案有两个:
(1) 将多媒体资源的地址与文本信息一起下发,多媒体资源单独发起请求获取。
(2) 讲多媒体数据与文本数据一次性下发。
多媒体数据一次性混合上传的解决方案有两种:
(1) 全部转化成可读字符串,再拼装;然后转化成bytes格式。(base64)
(2) 每个部分分别bytes,然后bytes串联。
考虑因素:大数据加密。
五、通信会话设计
1)会话的先后步骤全部客户端负责。
2)会话的先后顺序有客户端与服务器共同负责。
案例:多资源上传。
其它:
加密与网络通信数据处理的异同。