axios请求和vue-resource

1.axios的get请求

1.1  先引入Vue 和 axios 的文件

1   <script src="./js/vue2.js"></script>
2   <!-- 引入axios -->
3   <script src="./js/axios.js"></script>

1.2 这里的实例中 是在 mounted 钩子函数中发送的get请求,意思是在页面加载的执行发送  代码如下:

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4   <meta charset="UTF-8">
 5   <meta name="viewport" content="width=device-width, initial-scale=1.0">
 6   <meta http-equiv="X-UA-Compatible" content="ie=edge">
 7   <title>axios</title>
 8   <!-- 引入Vue文件 -->
 9   <script src="./js/vue2.js"></script>
10   <!-- 引入axios -->
11   <script src="./js/axios.js"></script>
12 </head>
13 <body>
14   <div id="app"></div>
15
16   <script>
17     var vm = new Vue({
18       el: ‘#app‘,
19       data: {
20
21       },
22       mounted() {  //这里使用mounted 钩子函数 是在页面加载的时候就发送get请求
23         axios.get(‘请求的接口‘).then(res => {  //.then是数据请求成功之后的回调函数
24           console.log(res);      //res是返回的数据
25           console.log(res.data)  //axios中我们真正需要的数据在data中
26         }).catch(error => {      //.catch是请求失败的回调函数
27           console.log(error)
28         })
29       }
30     })
31   </script>
32 </body>
33 </html>

1.3 github 上的案例是这么写的,上述案例中用的是ES6的箭头函数

axios.get(‘/user?ID=12345‘)     //接口
  .then(function (response) {   //成功的回调
    console.log(response);
  })
  .catch(function (error) {     //失败的回调
    console.log(error);
  })

// 也可以用以下的写法:
axios.get(‘/user‘, {
    params: {
      ID: 12345
    }
  })
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  })

2. axios 的 post 请求

2.1  同get请求一样 先引入文件

2.2  实例代码 注意:在GitHub中 post请求的接口中 参数拼接与get不同  没有parans字样。  我自己的代码示例:

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4   <meta charset="UTF-8">
 5   <meta name="viewport" content="width=device-width, initial-scale=1.0">
 6   <meta http-equiv="X-UA-Compatible" content="ie=edge">
 7   <title>axios</title>
 8   <!-- 引入Vue文件 -->
 9   <script src="./js/vue2.js"></script>
10   <!-- 引入axios -->
11   <script src="./js/axios.js"></script>
12 </head>
13 <body>
14   <div id="app"></div>
15   <script>
16     var vm = new Vue({
17       el: ‘#app‘,
18       data: {
19
20       },
21       mounted() {  //这里使用mounted 钩子函数 是在页面加载的时候就发送get请求
22         axios.post(‘接口地址‘, {   //通过对象传参
23           name: ‘hahaha‘
24         }).then(res =>{
25           console.log(res.data)
26         }).catch(error => {
27           console.log(error)
28         })
29       }
30     })
31   </script>
32 </body>
33 </html>

2.3  GitHub 上的示例

 1 axios.post(‘/user‘, {
 2     firstName: ‘Fred‘,
 3     lastName: ‘Flintstone‘
 4   })
 5   .then(function (response) {
 6     console.log(response);
 7   })
 8   .catch(function (error) {
 9     console.log(error);
10   });

3. vue-resource  (不推荐使用)

由于axios 不支持 jsonp 这种跨域请求的方式  所以之前一直再用 vue-resource ,但是由于官方停止维护了 ,并且推荐我们使用axios

3.1  jsonp 跨域的原理 :  简单的一句话总结 就是动态的创建了一个 script 标签 通过src 请求

3.2   示例代码

 1 <!DOCTYPE html>
 2 <html lang="en">
 3 <head>
 4   <meta charset="UTF-8">
 5   <meta name="viewport" content="width=device-width, initial-scale=1.0">
 6   <meta http-equiv="X-UA-Compatible" content="ie=edge">
 7   <title>axios</title>
 8   <!-- 引入Vue文件 -->
 9   <script src="./js/vue2.js"></script>
10   <!-- 引入axios -->
11   <script src="./js/axios.js"></script>
12 </head>
13 <body>
14   <div id="app"></div>
15   <script>
16     var vm = new Vue({
17       el: ‘#app‘,
18       data: {
19
20       },
21       mounted() {  //这里使用mounted 钩子函数 是在页面加载的时候就发送get请求
22          //他会在Vue的 prototype 上绑定一个$http对象
23         this.$http.jsonp(‘数据接口‘).then(res => {
24           console.log(res.body);  // 他的数据存放在body属性中
25         }), error => {
26           console.log(error)
27         }
28       }
29     })
30   </script>
31 </body>
32 </html>

原文地址:https://www.cnblogs.com/lirun-rainbow/p/10356046.html

时间: 2024-11-04 20:00:58

axios请求和vue-resource的相关文章

HttpClient之Get请求和Post请求示例 编辑

HttpClient的撑持在HTTP/1.1标准中界说的一切的HTTP办法:GET, HEAD, POST, PUT, DELETE, TRACE 和 OPTIONS.每有一个办法都有一个对应的类:HttpGet,HttpHead,HttpPost,HttpPut,HttpDelete,HttpTrace和HttpOptions.一切的这些类均完成了HttpUriRequest接口,故可以作为execute的履行参数使用.恳求URI是可以使用恳求的一致资本标识符. HTTP恳求的URI包括一个协

HttpClient之Get请求和Post请求示例

HttpClient之Get请求和Post请求示例 博客分类: Java综合 HttpClient的支持在HTTP/1.1规范中定义的所有的HTTP方法:GET, HEAD, POST, PUT, DELETE, TRACE 和 OPTIONS.每有一个方法都有一个对应的类:HttpGet,HttpHead,HttpPost,HttpPut,HttpDelete,HttpTrace和HttpOptions.所有的这些类均实现了HttpUriRequest接口,故可以作为execute的执行参数使

vue+vue-router+axios+element-ui构建vue实战项目之七(渲染content.vue内容)

在上一节<vue+vue-router+axios+element-ui构建vue实战项目之六(渲染index.vue列表)>中,我们从后端接口获取数据,并成功渲染出一个列表. 这节内容,我们来做内容页面. 编写src/page/content.vue 文件 话不多说,直接上代码 1 <template> 2 <div> 3 <h3>{{getMsg.title}}</h3> 4 <p>作者:{{getMsg.author.login

AJAX中出现两次请求,OPTIONS请求和GET请求

在项目中发现ajax中出现两次请求,OPTIONS请求和GET请求,得到的数据出错,所以想要去掉OPTIONS请求. ajax请求如下: ajaxRequestGet: function (lastPath, requestParams, successFun) { $.ajax({ headers: { 'GISTTOKEN': getToken() }, url : this.baseUrl+lastPath, type : "get", data: requestParams,

iOS开发网络篇—GET请求和POST请求

iOS开发网络篇—GET请求和POST请求 一.GET请求和POST请求简单说明 创建GET请求 1 // 1.设置请求路径 2 NSString *urlStr=[NSString stringWithFormat:@"http://192.168.1.53:8080/MJServer/login?username=%@&pwd=%@",self.username.text,self.pwd.text]; 3 NSURL *url=[NSURL URLWithString:u

GET请求和POST请求区别

GET请求和POST请求区别 1.GET被强制服务器支持 GET通常用于请求服务器发送某个资源.在HTTP/1.1中,要求服务器实现此方法;POST请求方法起初是用来向服务器输入数据的.在HTTP/1.1中,POST方法是可选被实现的,没有明确规定要求服务器实现. 2.浏览器对URL的长度有限制,所以GET请求不能代替POST请求发送大量数据 RFC 2616 中明确对 uri 的长度并没有限制.不过虽然在RFC中并没有对uri的长度进行限制,但是各大浏览器厂家在实现的时候限制了URL的长度,可

httpclient就是个能发送http连接的工具包,包括能发送post请求和get请求

1.httpclient就是个能发送http连接的工具包,包括能发送post请求和get请求. http 连接一次就有返回流.http是个双向的嘛.只有连接了,就会有输出返回流. 所以在执行http连接的时候,返回值都是http连接的返回流. HttpResponse response = client.execute(httpPost); 2.http发送,body里是可以写入中文的.但要注意乱码问题: public static String getHttpRequestString(Str

普通请求和ajax请求的区别

普通请求和ajax请求的区别? 下面的action返回一个json文件,文件内容为sts.*,data1

iOS开发网络篇—GET请求和POST请求(转)

一.GET请求和POST请求简单说明 创建GET请求 1 // 1.设置请求路径 2 NSString *urlStr=[NSString stringWithFormat:@"http://192.168.1.53:8080/MJServer/login?username=%@&pwd=%@",self.username.text,self.pwd.text]; 3 NSURL *url=[NSURL URLWithString:urlStr]; 4 5 // 2.创建请求对