Accept
表示当前这次请求,客户端希望服务端返回的数据类型(xml/json等)
Content-Type
表示当前这次请求,客户端提交的数据类型(x-www-form-urlencoded/json/xml等)
在标准的HTTP接口中,如果有Accept,则返回Accept指定的类型。如果无Accept,一般返回Content-Type指定的类型。
2. 跨域访问时,简单请求和非简单请求导致浏览器的不同处理。
跨域请求分为:简单请求(simple request)和非简单请求(not-so-simple request)。
简单请求
请求方法必须是:HEAD、GET、POST
HTTP头的信息不能超出Accept、Accept-Language、Content-Language、Last-Event-ID(server-sent event)和Content-Type(且Content-Type只限于application/x-www-form-urlencoded、multipart/form-data、text/plain三个值)
非简单请求
非简单请求是那种对服务器有特殊要求的请求,比如请求方法是PUT或DELETE,或者Content-Type字段的类型是application/json。
非简单请求的CORS请求,会在正式通信之前,增加一次HTTP查询请求,称为"预检"请求(preflight)。
浏览器先询问服务器,当前网页所在的域名是否在服务器的许可名单之中,以及可以使用哪些HTTP动词和头信息字段。只有得到肯定答复,浏览器才会发出正式的XMLHttpRequest请求,否则就报错。
3. HTTP是无状态的协议,服务端如何区分请求的客户端
SessionId
(此cookie为HttpOnly,js无法直接获取和修改,但可以通过抓包工具获取,并可以通过js伪造。)
4. SOAP协议与HTTP协议的关系
SOAP协议本质是一种符合特殊规范的HTTP协议
应用场景:
1)不通过添加服务引用调用时
2)Jjs调用时
拓展:
Last-Event-ID 标识最后一次接受的event id,一般应用于 的断线重连