--- tags: Javascript, Frontend --- # axios基本語法 ## 簡介 axios是一種HTTP的請求工具,也是Vue的作者尤雨溪推薦使用,比起ajax更為輕量,跟fetch一樣使用promise物件,卻不限至瀏覽器,只需要短短幾行程式碼即可,寫法更加直覺,以下為官方表明特點。 1. 從瀏覽器發出 XMLHttpRequests 1. 可以從 node.js 發出 http 請求 1. 支持 Promise API 1. 攔截請求和響應 1. 轉換請求和響應數據 1. 取消請求 1. JSON 數據的自動轉換 1. 客戶端支持防止 XSRF ## 安裝 介紹常見的安裝方式,其他請查閱文檔 ### 使用NPM `$ npm install axios` ### 引入CDN `<script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>` ## axios基本用法 ### axios get方法 沒有參數時get請求 ```javascript= axios.get('https://example.com') // 放入要發出get請求網址 .then(function (response) { // 當請求成功時 console.log(response); }) .catch(function (error) { // 請求失敗時 console.log(error); }) .then(function () { // 總是執行 }); ``` 有參數 ```javascript= axios.get('https://example.com', { params: { ID: 123 } }) // 幫你組合成https://example.com?ID=123 .then(function (response) { // 當請求成功時 console.log(response); }) .catch(function (error) { // 請求失敗時 console.log(error); }) .then(function () { // 總是執行 }); ``` ### axios post方法 使用post請求,傳送name和eamil資料 ```javascript= axios.post('/signup', { name: 'Joe', email: 'joe94113@gmail.com' }) .then(function (response) { console.log(response); }) .catch(function (error) { console.log(error); }); ``` 當然除了get,post之外還有其他HTTP請求可以使用,使用方式也是大同小異,就是路由以及HTTP method的改變而已。 ## 使用六角註冊登入API axios範例程式碼 <iframe height="300" style="width: 100%;" scrolling="no" title="CodePen Home Hexschool AJAX POST 小節作業" src="https://codepen.io/joe94113/embed/YzrPjEQ?default-tab=html%2Cresult" frameborder="no" loading="lazy" allowtransparency="true" allowfullscreen="true"> See the Pen <a href="https://codepen.io/joe94113/pen/YzrPjEQ"> CodePen Home Hexschool AJAX POST 小節作業</a> by 王冠智 (<a href="https://codepen.io/joe94113">@joe94113</a>) on <a href="https://codepen.io">CodePen</a>. </iframe>
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.