1. 程式人生 > >axios 全攻略之 API

axios 全攻略之 API

你可以在 Request 中使用具體的配置項

傳送一個 POST 請求

axios({
  method: 'post',
  url: '/user/12345',
  data: {
    firstName: 'Fred',
    lastName: 'Flintstone'
  }
});

請求一張遠端圖片

axios({
  method:'get',
  url:'http://bit.ly/2mTM3nY',
  responseType:'stream'
})
  .then(function(response) {
  response.data.pipe(fs.createWriteStream('ada_lovelace.jpg'
)) });

在 axios 中使用 axios(url[, config]) 方式來配置選項

比如一個預設的 GET 請求

axios('/user/12345');

請求方法簡寫

axios 提供了一系列簡潔的方法來支援所有的請求

axios.request(config)

axios.get(url[, config])

axios.delete(url[, config])

axios.head(url[, config])

axios.options(url[, config])

axios.post(url[, data[, config]])

axios.put(url[, data[, config]])

axios.patch(url[, data[, config]])

你可以使用如下的兩個方法來併發的執行非同步請求,當最後一個請求之後才執行後面的程式碼

axios.all(iterable)

axios.spread(callback)

這裡舉例說明

function getUserAccount() {
  return axios.get('/user/12345');
}

function getUserPermissions() {
  return axios.get('/user/12345/permissions');
}

axios.all([getUserAccount(), getUserPermissions()])
  .then(axios.spread(function
(acct, perms) {
// Both requests are now complete }));

建立一個例項

你能夠通過自定義的配置建立一個 axios 例項

axios.create([config])

var instance = axios.create({
  baseURL: 'https://some-domain.com/api/',
  timeout: 1000,
  headers: {'X-Custom-Header': 'foobar'}
});

例項

可以使用的例項如下所示,指定的配置會和例項配置合併

axios#request(config)

axios#get(url[, config])

axios#delete(url[, config])

axios#head(url[, config])

axios#options(url[, config])

axios#post(url[, data[, config]])

axios#put(url[, data[, config]])

axios#patch(url[, data[, config]])