Vue2学习笔记之请求数据交互vue-resource
基本语法
必须引入一个库:vue-resourcegithub地址
//基于全局Vue对象使用http
Vue.http.get('/someUrl',[options]).then(successCallback,errorCallback);
Vue.http.post('/someUrl',[body],[options]).then(successCallback,errorCallback);
//在一个Vue实例内使用$http
this.$http.get('/someUrl',[options]).then(successCallback,errorCallback);
this.$http.post('/someUrl',[body],[options]).then(successCallback,errorCallback);
vue-resource的请求API是按照REST风格设计的,它提供了7种请求API:
- get(url,[options])
- head(url,[options])
- delete(url,[options])
- jsonp(url,[options])
- post(url,[body],[options])
- put(url,[body],[options])
- patch(url,[body],[options])
Options
Parameter
Type
Description
url
string
请求的UR
body
Object,FormData,string
requestbody
headers
Object
requestheader
params
Object
请求的URL参数对象
method
string
请求的HTTP方法,例如:'GET','POST'或其他HTTP方法
timeout
number
单位为毫秒的请求超时时间(0表示无超时时间)
before
function(request)
请求发送前的处理函数,类似于jQuery的beforeSend函数
progress
function(event)
ProgressEvent回调处理函数
credentials
boolean
表示跨域请求时是否需要使用凭证
emulateHTTP
boolean
发送PUT,PATCH,DELETE请求时以HTTPPOST的方式发送,并设置请求头的X-HTTP-Method-Override
emulateJSON
boolean
将requestbody以application/x-www-form-urlencodedcontenttype发送
1.向文本发出get请求
准备一个1.txt的文本数据,时面的内容是:welcomettovue!!!
<!DOCTYPEhtml>
<html>
<head>
<title></title>
<metacharset="utf-8">
<scriptsrc="http://unpkg.com/vue/dist/vue.js"></script>
<scriptsrc="http://files.cnblogs.com/files/zycbloger/vue-resource.min.js"></script>
<scripttype="text/javascript">
window.onload=function(){
varvm=newVue({
el:'#box',
data:{
msg:'HelloWorld!',
},
methods:{
get:function(){
//发送get请求
this.$http.get('1.txt').then(function(res){
alert(res.body);
},function(){
alert('请求失败处理');//失败处理
});
}
}
});
}
</script>
</head>
<body>
<divid="box">
<inputtype="button"@click="get()"value="按钮">
</div>
</body>
</html>
上面代码实现了,点击按钮,就发送get请求,成功就会执行弹窗welcomettovue!!!
2.关于向后端请求,并带参数的写法
<!DOCTYPEhtml>
<html>
<head>
<title></title>
<metacharset="utf-8">
<scriptsrc="http://unpkg.com/vue/dist/vue.js"></script>
<scriptsrc="http://files.cnblogs.com/files/zycbloger/vue-resource.min.js"></script>
<scripttype="text/javascript">
window.onload=function(){
varvm=newVue({
el:'#box',
data:{
msg:'HelloWorld!',
},
methods:{
get:function(){
//发送get请求
this.$http.get('get.do',{a:1,b:2}).then(function(res){
alert(res.body);
},function(){
alert('请求失败处理');//失败处理
});
},
post:function(){
//发送post请求
this.$http.post('post.do',{a:1,b:2}).then(function(res){
alert(res.body);
},function(){
alert('请求失败处理');//失败处理
});
}
}
});
}
</script>
</head>
<body>
<divid="box">
<inputtype="button"@click="get()"value="按钮get">
<inputtype="button"@click="post()"value="按钮post">
</div>
</body>
</html>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。