AJAX
Last updated on a day ago
创建对象
1 |
|
老版本的ie需要用
1 |
|
发送请求
发送请求通过open
和send
方法实现
方法参数如下:
- open
- method-string: 请求的类型GET或者POST,字符
- url-string: 接口链接
- async-bool: true为异步,false为同步
- send
- body-string: 发送给服务器的参数
示例:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16// 创建对象
const Http = new XMLHttpRequst();
// GET请求
// 传入参数,GET方法、接口链接、异步
Http.open("GET","http://127.0.0.1:8888",true);
// 发送请求
Http.send();
// POST请求
// 传入参数,GET方法、接口链接、异步
Http.open("POST","http://127.0.0.1:8888",true);
// 设置请求头
Http.setRequestHeader("Content-type","application/x-www-form-urlencoded");
// 发送带参数的请求
Http.send("name=lihua&age=10")
- body-string: 发送给服务器的参数
请求头
设置请求头
设置请求头可以通过setRequestHeader()
方法实现
方法参数如下:
- header-string: 头的名称
- values-string: 头的值
1
2
3const Http = new XMLHttpRequst();
Http.open(......);
Http.setRequestHeader("Content-type","application/x-www-form-urlencoded");
请求头的作用
可以传递请求的附加信息,如:身份验证、用户代理、缓存行为、请求体格式等
常用请求头
- host: 域名
- Content-Type: 媒体类型(MIME类型),用于区分数据类型
它的格式为:Content-Type: type/subtype ; parameter
,主类型/子类型;可选参数(比如字符集等)。参见的有:- application/x-www-form-urlencoded
一般用于表单提交,http请求将会以key1=value1&key2=value2的形式,如果是中文字符或特殊字符会自动进行URL转码。 - application/xml
用于接受和发送XML - application/json
用于接受和发送JSON数据 - text/html
表示HTML文档,用于传输网页内容 - multipart/form-data
用于上传文件的表单提交
- application/x-www-form-urlencoded
- Connection: 链接类型,发送请求后是否关闭链接
- kepp-alive: 长链接,每次请求复用已建立好的请求
- close: 每次请求重新建立一个请求
- Accept: 指定能够接收的内容类型,常用的有:
- text/html: HTML文档
- application/json:JSON 数据
- application/xml:XML 数据
- text/plain:纯文本
- /:任意类型的数据
- Upgrade-Insecure-Requests: 升级为HTTPS请求,取值‘1’
- User-Agent: 用户代理(浏览器、主机信息)
- referer: 页面跳转处(跳转来源),用于检查页面跳转是否合法、防盗链,取值为链接
- Cookie: 状态保持
- Authorization: 用于身份验证,常用于发送token