在上一节,阐明了 config
这个完整对象内的可设置属性。
一般来说,可以通过 config
中的 method
属性来声明请求方式。
但为了方便,Axios
提供了一些额外方式来直接声明 method
。
3-1.axios支持请求方式
axios.get(url[, config])
axios.post(url[, data[, config]])
axios.put(url[, data[, config]])
axios.patch(url[, data[, config]])
axios.delete(url[, config])
axios.options(url[, config])
axios.head(url[, config])
在日常的开发中,我们使用较多的,只有 axios.get
和 axios.post
这俩种形式。
js
// get方式
axios.get('/path/to/get?id=1000', {
headers: {
'custom-header': 'abcd'
}
})
// post方式
axios.post('/path/to/post', {
id: '9527',
name: 'zxx'
}, {
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
}
})
3-2.http请求方式
GET
方法请求一个指定资源的表示形式,使用 GET 的请求应该只被用于获取数据。POST
方法用于将实体提交到指定的资源,通常导致在服务器上的状态变化或副作用。PUT
方法用请求有效载荷替换目标资源的所有当前表示。PATCH
方法用于对资源应用部分修改。DELETE
方法删除指定的资源。OPTIONS
方法用于描述目标资源的通信选项。HEAD
方法请求一个与GET
请求的响应相同的响应,但没有响应体。CONNECT
方法建立一个到由目标资源标识的服务器的隧道。TRACE
方法沿着到目标资源的路径执行一个消息环回测试。
RESTFUL
架构,Representational State Transfer
即 “表现层状态转化”。
推荐使用 GET
POST
PUT
DELETE
来实现 CRUD
操作。
其中 POST
与 PUT
的区别在于,PUT
方法是一个幂等方法,即执行无数次 PUT
方法,PUT
方法不会有副作用,其返回值不变。
而每一次的 POST
都可能会影响服务器资源的状态。