<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>
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> ,的返回值
以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(‘添加失败‘)
}
})
原文:https://www.cnblogs.com/asndxj/p/11691054.html