基于promise用于浏览器和node.js的http客户端的axios

axios 是一个基于Promise 用于浏览器和 nodejs 的 HTTP 客户端,它本身具有以下特征:

  • 从浏览器中创建 XMLHttpRequest
  • 从 node.js 发出 http 请求
  • 支持 Promise API
  • 拦截请求和响应
  • 转换请求和响应数据
  • 取消请求
  • 自动转换JSON数据
  • 客户端支持防止 CSRF/XSRF

axios中文文档:https://blog.csdn.net/qq_36538012/article/details/81942990

axios-w3cschool-菜鸟教程:http://www.27900.com/axios

Vue 官方建议用 axios 代替 vue-resourse,所以在这里不做vue-resourse的探讨;

axios 使用基本方法和个别参数

axios({
url: 'http://jsonplaceholder.typicode.com/users',
method: 'get',
responseType: 'json', // 默认的
data: {
//'a': 1,
//'b': 2,
}
}).then(function (response) {
console.log(response);
console.log(response.data);
}).catch(function (error) {
console.log(error);
})

相关依赖

安装

1:npm安装

   npm install axios --save

2.在main.js下引用axios

  import axios from 'axios'

一切环境依赖搭建好之后

下面来写个例子:axios请求本地json

1:在static文件夹底下新建json文件,( 本地JSON文件一定要需放在static文件夹之下。)

访问服务器文件,应该把 json文件放在最外层的static文件夹,这个文件夹是vue-cli内置服务器向外暴露的静态文件夹

基于promise用于浏览器和node.js的http客户端的axios

图片.png

2:test.json数据格式如下:

基于promise用于浏览器和node.js的http客户端的axios

图片.png

{
"name":"wnagxiaoting",
"age":24
}

3:写一个axios

getData() {

                axios.get('../../static/test.json').then(response => {

                    console.log(response.data);

                }, response => {
console.log("error");
});
}

4:整体代码如下:

<template>
<div id="app"> </div>
</template> <script>
import axios from "axios"; export default {
name: "app",
data() {
return {
itemList: []
}
},
mounted() {
this.getData();
},
methods: {
getData() { axios.get('../../static/test.json').then(response => { console.log(response.data); }, response => {
console.log("error");
});
}
}
}
</script>

5:前台显示:

基于promise用于浏览器和node.js的http客户端的axios

原文作者:祈澈姑娘

技术博客:https://www.jianshu.com/u/05f416aefbe1

90后前端妹子,爱编程,爱运营,爱折腾。

坚持总结工作中遇到的技术问题,坚持记录工作中所所思所见,欢迎大家一起探讨交流。

上一篇:node.js开发平台


下一篇:LoopBack – 开源的,可扩展的 Node.js 框架