恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

Vue进阶(幺伍肆):vue-resource 应用

  • 首页
  • 资讯中心
  • /
  • Vue进阶(幺伍肆):vue-resource 应用

相关资讯

2026年毕业论文模板工具横向评测推荐:学范文等五大平台深度解析 2026/8/7 23:09:33
HFSS波端口错误排查:内部端口与PEC支撑问题的原理与解决 2026/8/7 23:09:33
2026年GEO优化收费标准多少?源头厂家怎么选才不踩坑? 2026/8/7 23:09:33

最新资讯

开源项目第178期:OptMem — 426 个 token 的提示词,给 AI Agent 跨会话的持久记忆
5分钟掌握CTF流量分析神器:CTF-NetA终极指南
企业公章管理怎么做才安全?3 个被忽略的用章漏洞
Palworld存档迁移终极方案:告别角色丢失的完整指南
网盘直链下载助手:解锁你的网盘下载新姿势,告别龟速下载的烦恼
深圳专业网站制作公司哪家好?中山品牌网站建设服务深度解析与避坑指南

今日推荐

Java图像处理实战指南
昇腾AI代理实现多号通话自动化
2026年Graph+AI Agents最新创新思路

本周热门

ncmdumpGUI:一键解锁网易云音乐ncm文件的终极解决方案
分布式配置中心选型实战:Nacos与Consul在创业场景下的对比
MoneyPrinterPlus实战指南:AI视频批量生成与自动化发布完整解决方案

本月精选

如何用DamaiHelper实现演唱会门票的智能自动化抢购:完整技术解决方案指南
第4篇:59 倍性能差距的索引瓶颈定位——一次教科书级的全表扫描调优
终极歌词批量下载神器:5分钟解决离线音乐库歌词同步难题

Vue进阶(幺伍肆):vue-resource 应用

发布时间:2026/8/7 23:09:33
Vue进阶(幺伍肆):vue-resource 应用 文章目录一、前言二、vue-resource 特点三、基本语法四、http 方法列表五、示例代码六、安装七、应用八、resource 服务应用九、拓展阅读一、前言vue-resource是Vue.js的一款插件它可以通过XMLHttpRequest或JSONP发起请求并处理响应。也就是说$.ajax能做的事情vue-resource插件一样也能做到而且vue-resource的API更为简洁。vue-resource是一个非常轻量的用于处理HTTP请求的插件它提供了两种方式来处理HTTP请求使用Vue.http或this.$http使用Vue.resource或this.$resource这两种方式本质上没有什么区别阅读vue-resource的源码可以得知第2种方式其实是基于第1种方式实现的。此外vue-resource还提供了拦截器inteceptor可以在请求前和请求后附加一些行为这意味着除了请求处理的过程请求的其他环节都可以由我们来控制。在Vue.js中完成ajax请求的方式有两种vue-resource和axios。Vue.js 2.0版本推荐使用axios来完成ajax请求。有关axios应用详参博文二、vue-resource 特点体积小vue-resource非常小巧在压缩以后只有大约12KB服务端启用gzip压缩后只有4.5KB大小这远比jQuery的体积要小得多。支持主流浏览器和Vue.js一样vue-resource除了不支持IE9以下的浏览器其他主流的浏览器都支持;支持Promise API和URI TemplatesPromise是ES6的特性Promise的中文含义为“先知”Promise对象用于异步计算。URI Templates表示URI模板有些类似于ASP.NET MVC的路由模板;支持拦截器拦截器是全局的拦截器可以在请求发送前和发送请求后做一些处理。 拦截器在一些场景下会非常有用比如请求发送前在headers中设置access_token或者在请求失败时提供共用的处理方式。有关拦截器的具体应用详参《Vue进阶幺伍伍vue-resource 拦截器interceptors使用》。三、基本语法引入vue-resource后可以基于全局Vue对象使用http也可以基于某个Vue实例使用http。基于全局Vue对象使用httpVue.http.get(/someUrl,[options]).then(successCallback,errorCallback);Vue.http.post(/someUrl,[body],[options]).then(successCallback,errorCallback);在一个Vue实例内使用$httpthis.$http.get(/someUrl,[options]).then(successCallback,errorCallback);this.$http.post(/someUrl,[body],[options]).then(successCallback,errorCallback);以下是一个简单的get应用示例// GET /someUrlthis.$http.get(/someUrl).then(response{// success callback},response{// error callback});四、http 方法列表vue-resource的请求API是按照REST风格设计的它提供了7种请求APIget(url, [options])head(url, [options])delete(url, [options])jsonp(url, [options])post(url, [body], [options])put(url, [body], [options])patch(url, [body], [options])除了jsonp以外另外6种的API名称都是标准的HTTP方法。当服务端使用REST API时客户端的编码风格和服务端的编码风格近乎一致这可以减少前端和后端开发人员的沟通成本。options对象发送请求时的options选项对象包含以下属性Response返回对象的参数以及对象的方法如下五、示例代码简单的post提交{// POST /someUrlthis.$http.post(/someUrl,{foo:bar}).then(response{// get statusresponse.status;// get status textresponse.statusText;// get Expires headerresponse.headers.get(Expires);// get body datathis.someDataresponse.body;},response{// error callback});}带查询参数和自定义请求头的GET请求:在这里插入代码片{// GET /someUrl?foobarthis.$http.get(/someUrl,{params:{foo:bar},headers:{X-Custom: ...}}).then(response{// success callback},response{// error callback});}获取图片并使用blob()方法从响应中提取图片的主体内容。// GET /image.jpgthis.$http.get(/image.jpg,{responseType:blob}).then(response{// resolve to Blobreturnresponse.blob();}).then(blob{// use image Blob});六、安装npm install vue-resource--save–save参数的作用是在我们的包配置文件package.json文件中添加对应的配置。安装成功后 可以查看package.json文件会发现多了vue-resource: ^1.3.4的配置。具体如下dependencies:{vue:^2.3.3,vue-resource:^1.3.4,vue-router:^2.7.0},七、应用通过以上步骤已经安装好了vue-resource但是在vue-cli中我们如何使用呢首先我们需要在main.js文件中导入并注册vue-resource:importVueResource from vue-resource Vue.use(VueResource)八、resource 服务应用vue-resource提供了另外一种方式访问HTTP——resource服务resource服务包含以下几种默认的actionget: {method: GET},save: {method: POST},query: {method: GET},update: {method: PUT},remove: {method: DELETE},delete: {method: DELETE}1、resource对象也有两种访问方式全局访问和局部访问。//全局访问Vue.resource//局部访问this.$resource可以结合URI Template一起使用以下示例的apiUrl都设置为{/id}了apiUrl:http://*.*.*.*:8080/api/customers{/id}{/id}相当于一个占位符当传入实际的参数时该占位符会被替换。例如{ id: vm.item.customerId}中的vm.item.customerId为12那么发送的请求URL为http://*.*.*.*:8080/api/customers/122、使用实例//使用get方法发送GET请求下面这个请求没有指定{/id}getCustomers:function(){varresourcethis.$resource(this.apiUrl),vmthis;resource.get().then((response){vm.$set(gridData,response.data);}).catch(function(response){console.log(response);})}//使用save方法发送POST请求下面这个请求没有指定{/id}createCustomer:function(){varresourcethis.$resource(this.apiUrl),vmthis;resource.save(vm.apiUrl,vm.item).then((response){vm.$set(item,{});vm.getCustomers();});this.showfalse;}//使用update方法发送PUT请求下面这个请求指定了{/id}updateCustomer:function(){varresourcethis.$resource(this.apiUrl),vmthis;resource.update({id:vm.item.customerId},vm.item).then((response){vm.getCustomers();})}九、拓展阅读《Vue进阶三Axios使用详解》《Vue进阶四使用 Vuex axios 发送请求》《vue-resource 拦截器interceptors使用》

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号