美文网首页vuevueVUE
vue基础之使用get、post、jsonp实现交互功能示例

vue基础之使用get、post、jsonp实现交互功能示例

作者: 88b61f4ab233 | 来源:发表于2019-03-30 15:25 被阅读217次

    一、如果vue想做交互,引入: vue-resouce

    二、get方式

    1、get获取一个普通文本数据:

    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <title></title>
      <style>
      </style>
      <script src="vue.js"></script>
      <script src="vue-resource.js"></script>
      <script>
        window.onload=function(){
          new Vue({
            el:'body',
            data:{
            },
            methods:{
              get:function(){
                this.$http.get('a.txt').then(function(res){
                  alert(res.status);//成功
                  alert(res.data);
                },function(res){
                  alert(res.status);//失败返回
                  alert(res.data);
                });
              }
            }
          });
        };
      </script>
    </head>
    <body>
      <input type="button" value="按钮" @click="get()">
    </body>
    </html>
    

    2、get给服务发送数据:

    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <title></title>
      <style>
      </style>
      <script src="vue.js"></script>
      <script src="vue-resource.js"></script>
      <script>
        window.onload=function(){
          new Vue({
            el:'body',
            data:{
            },
            methods:{
              get:function(){
                this.$http.get('get.php',{
                  a:1,
                  b:2
                }).then(function(res){
                  alert(res.data);
                },function(res){
                  alert(res.status);
                });
              }
            }
          });
        };
      </script>
    </head>
    <body>
      <input type="button" value="按钮" @click="get()">
    </body>
    </html>
    

    三、post方式

    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <title></title>
      <style>
      </style>
      <script src="vue.js"></script>
      <script src="vue-resource.js"></script>
      <script>
        window.onload=function(){
          new Vue({
            el:'body',
            data:{
            },
            methods:{
              get:function(){
                this.$http.post('post.php',{
                  a:1,
                  b:20
                },{
                  emulateJSON:true
                }).then(function(res){
                  alert(res.data);
                },function(res){
                  alert(res.status);
                });
              }
            }
          });
        };
      </script>
    </head>
    <body>
      <input type="button" value="按钮" @click="get()">
    </body>
    </html>
    

    四、jsonp方式

    获取百度接口

    查看响应数据

    jsonp请求百度接口

    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <title></title>
      <style>
      </style>
      <script src="vue.js"></script>
      <script src="vue-resource.js"></script>
      <script>
        window.onload=function(){
          new Vue({
            el:'body',
            data:{
            },
            methods:{
              get:function(){
                this.$http.jsonp('https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su',{
                  wd:'a'
                },{
                  jsonp:'cb'//回调函数名称
                }).then(function(res){
                  alert(res.data.s);
                },function(res){
                  alert(res.status);
                });
              }
            }
          });
        };
      </script>
    </head>
    <body>
      <input type="button" value="按钮" @click="get()">
    </body>
    </html>
    

    jsonp请求360接口

    
    <!DOCTYPE html>
    <html lang="en">
    <head>
      <meta charset="UTF-8">
      <title></title>
      <style>
      </style>
      <script src="vue.js"></script>
      <script src="vue-resource.js"></script>
      <script>
        window.onload=function(){
          new Vue({
            el:'body',
            data:{
            },
            methods:{
              get:function(){
                this.$http.jsonp('https://sug.so.360.cn/suggest',{
                  word:'a'
                }).then(function(res){
                  alert(res.data.s);
                },function(res){
                  alert(res.status);
                });
              }
            }
          });
        };
      </script>
    </head>
    <body>
      <input type="button" value="按钮" @click="get()">
    </body>
    </html>
    

    最后

    为了帮助大家让学习变得轻松、高效,给大家免费分享一大批资料,帮助大家在成为全栈工程师,乃至架构师的路上披荆斩棘。在这里给大家推荐一个前端全栈学习交流圈:866109386.欢迎大家进群交流讨论,学习交流,共同进步。

    当真正开始学习的时候难免不知道从哪入手,导致效率低下影响继续学习的信心。

    但最重要的是不知道哪些技术需要重点掌握,学习时频繁踩坑,最终浪费大量时间,所以有有效资源还是很有必要的。

    最后祝福所有遇到瓶疾且不知道怎么办的前端程序员们,祝福大家在往后的工作与面试中一切顺利。


    相关文章

      网友评论

        本文标题:vue基础之使用get、post、jsonp实现交互功能示例

        本文链接:https://www.haomeiwen.com/subject/mutsbqtx.html