[TOC] #### 1. 什么是 axios? --- axios中文網(wǎng):[http://www.axios-js.com](http://www.axios-js.com) github倉(cāng)庫(kù)地址:[https://github.com/axios/axios](https://github.com/axios/axios) Axios 是一個(gè)基于 promise 的 HTTP 庫(kù),可以用在瀏覽器和 node.js 中 #### 2. axios 實(shí)例方法 --- ```javascript axios.get(url, config) axios.post(url, data, config) ``` #### 3. CDN 方式示例 --- ```html <script src="https://unpkg.com/axios/dist/axios.min.js"></script> <script> axios.get('http://127.0.0.1/1.php').then(res => { // 接口數(shù)據(jù) console.log(res.data) }) </script> ``` #### 4. 發(fā)送get請(qǐng)求,攜帶參數(shù) --- **請(qǐng)求參數(shù)屬性: params: {} ** ```javascript axios.get('http://127.0.0.1/1.php', { params: { id: 1, name: 'liang' } }) .then(res=>{ // 接口數(shù)據(jù) console.log(res.data) }) ``` #### 5. 發(fā)送post請(qǐng)求,攜帶參數(shù) --- **參數(shù)直接作為 `axios.post()` 的第二個(gè)參數(shù),而不像get請(qǐng)求需要寫在 params 中** ```javascript axios.post('http://127.0.0.1/1.php', { id: 1, name: 'liang' }) .then(res=>{ console.log(res.data) }) ``` **特別注意:PHP則需要使用以下方式接收POST數(shù)據(jù) $_POST是接收不到的** ```php file_get_contents('php://input'); ``` **解決方案:使用Qs處理下數(shù)據(jù),此時(shí)PHP可以使用$_POST接收到參數(shù)了** 在bootcdn搜索qs,引入qs的cdn,使用 Qs.stringify 處理數(shù)據(jù) ```html <script src="https://unpkg.com/axios/dist/axios.min.js"></script> <!-- 引入 qs 在bootcdn搜索qs --> <script src="https://cdn.bootcdn.net/ajax/libs/qs/6.9.4/qs.min.js"></script> <script> axios.post('http://127.0.0.1/1.php', Qs.stringify({ id: 1, name: 'liang' })) .then(res=>{ console.log(res.data) }) </script> ``` #### 6. axios 全能型 --- **get** ```javascript axios({ url: 'http://127.0.0.1/1.php', method: 'get', params: {id: 1} }).then(res => { console.log(res.data) }) ``` **post** ```javascript axios({ url: 'http://127.0.0.1/1.php', method: 'post', data: Qs.stringify({id: 1}) }).then(res => { console.log(res.data) }) ``` #### 7. xm-select --- **推薦一個(gè)下拉多選的插件,該插件文檔中的示例,也是使用的 axios** xm-select:[https://gitee.com/maplemei/xm-select](https://gitee.com/maplemei/xm-select) ![](https://img.itqaq.com/art/content/df18d88694cccf094d72acb5e1ce6cfc.png)