1.信息交换的格式
XML,可扩展标记性语言
JSON,javascript object notation,JSON可以轻松的把js对象转为可以随请求发送的数据。
2.什么是网络协议,有哪些常见的网络协议?
网络协议是网络上设备通信的规则集合。常见的网络协议有TCP/IP,SMTP(邮件),FTP。
3.TCP/IP简介
TCP/IP是一个网络通信模型,及一整个网络传输协议家族。由于网络协议普遍采用分层结构,当多层的协议共同工作时,类似于计算机的堆栈,因此也常常被称为TCP/IP协议栈。
TCP/IP将OSI的七层模型简化为四层,应用层(HTTP,FTP,DNS),传输层(TCP,UDP),网络互连层(IP),网络访问层(以太网,wi-fi)。具体情况参见这里
4.HTTP协议
HTTP协议是客户端和服务器认同的,客户端发送请求,服务端收到请求,给出响应。以浏览器为例,发送的请求有哪些呢?
- 输入地址栏地址
- 点击a标签,跳转页面
- 提交表单
- JavaScript实现页面跳转
- XMLHttpRequest (Ajax)
- img标签或者script标签的src属性可以请求资源 (JSONP)
以上是发送请求的方式,这些方式通过两种方法实现,GET和POST。
GET是从指定的资源请求数据;
POST是向指定的资源提交要被处理的数据。
GET请求会把要发送的数据放在URL之后,以?分割,中间以&连接;
POST把提交的数据则放置在是HTTP包的包体中。
GET的长度受限于url的长度,而url的长度限制是特定的浏览器和服务器设置的,理论上GET的长度可以无限长;
POST是没有大小限制的,HTTP协议规范也没有进行大小限制,起限制作用的是服务器的处理程序的处理能力。
其他的请求PUT/HEAD等,查看计算机网络??。
5.chrome查看HTTP消息的内容
打开chrome调试工具,查看network选项。当你访问一个网页时,你可以看到请求和响应的具体细节。
下面是一些常见的HTTP状态码
200 - 请求成功
301 - 资源(网页等)被永久转移到其它URL
404 - 请求的资源(网页等)不存在
500 - 内部服务器错误
所有状态码归纳起来,如下
1** 信息,服务器收到请求,需要请求者继续执行操作
2** 成功,操作被成功接收并处理
3** 重定向,需要进一步的操作以完成请求
4** 客户端错误,请求包含语法错误或无法完成请求
5** 服务器错误,服务器在处理请求的过程中发生了错误