首页 > Web开发 > 详细

vue.js_07_vue-resource的请求方式

时间:2019-10-17 12:28:32      阅读:146      评论:0      收藏:0      [点我收藏+]

1.vue-resource 实现 get, post, jsonp请求

<body>
        <div id="app">
            <input type="button" value="get请求" @click="getInfo">
            <input type="button" value="post请求" @click="postInfo">
            <input type="button" value="jsonp请求" @click="jsonpInfo">
        </div>

        <script>
            // 创建 Vue 实例,得到 ViewModel
            var vm = new Vue({
                el: #app,
                data: {},
                methods: {
                    getInfo() { // 发起get请求
                        //  当发起get请求之后, 通过 .then 来设置成功的回调函数
                        this.$http.get(http://vue.studyit.io/api/getlunbo).then(function(result) {
                            // 通过 result.body 拿到服务器返回的成功的数据
                            // console.log(result.body)
                        })
                    },
                    postInfo() { // 发起 post 请求   application/x-wwww-form-urlencoded
                        //  手动发起的 Post 请求,默认没有表单格式,所以,有的服务器处理不了
                        //  通过 post 方法的第三个参数, { emulateJSON: true } 设置 提交的内容类型 为 普通表单数据格式
                        this.$http.post(http://vue.studyit.io/api/post, {}, {
                            emulateJSON: true
                        }).then(result => {
                            console.log(result.body)
                        })
                    },
                    jsonpInfo() { // 发起JSONP 请求
                        this.$http.jsonp(http://vue.studyit.io/api/jsonp).then(result => {
                            console.log(result.body)
                        })
                    }
                }
            });
        </script>
    </body>

 2.请求中的注意事项

  1>配置全局的,请求数据接口,所有的相对路径的请求都会加上该地址

//配置全局的,请求数据接口,所有的相对路劲的请求都加上‘http://vue.studypr.io/api/‘
//相对路径  请求url前面没有加/
            Vue.http.options.root=‘http://vue.studypr.io/api/‘;

 

  2>全局启用  emulateJSON请求方式 

 如果Web服务器无法处理编码为application/json的请求,你可以启用emulateJSON选项。启用该选项后,请求会以application/x-www-form-urlencoded作为Content-Type,就像普通的HTML表单一样。

   Vue.http.options.emulateJSON=true

 

  3>vue-resource 实现 get, post, jsonp请求,的返回值 

  以post请求添加商品为例子:

this.$http.post(‘add‘, {name: this.name}, {emulateJSON: true}).then(result => {//url=‘http://vue.studypr.io/api/add‘
                            if(result.body.start === 0) {
                                //成功 重新获取所有的数据
                                this.getAllList()
                            } else {
                                alert(‘添加失败‘)
                            }

                        })

 

vue.js_07_vue-resource的请求方式

原文:https://www.cnblogs.com/asndxj/p/11691054.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!