vue3专栏项目 -- 四、前后端结合(上)

一、前后端分离是什么

前面我们一直在和静态数据打交道,虽然流程可以跑个半通,但是静态数据还是给我们造成了诸多不便,现在我们是时候用上后端了。

现在的应用开发模式,自从SPA出现以后,前端和后端可以平行的进行对应的工作,然后再进行接口的联调和整合,这种开发方式就是前后端分离开发。

二、什么是RESTful API

HTTP动词:

· GET(select):从服务器取出资源(一项或多项)

· POST (create):在服务器新建一个资源

· PUT (update):在服务器更新资源

· PATCH (update):在服务器更新资源

· DELETE(delete):从服务器删除资源

三、接口文档

1、接口文档需要包括的点

· endpoints:具体路径

· 使用什么样的method?

· 发送请求的具体参数

· 请求返回的数据格式

2、swagger 的出现

文档规范,我们这个项目看 api.vikingship.xyz 就可以看到这个专栏项目的swagger

有了这个swagger文档,我们就可以很方便的在界面中了解和把玩现在所有的API了,它给前后端工程师都带来了很多的便利

接下来我们把这些写好的后端API在项目中使用,在应用中展示这些数据

四、axios的基本用法

安装axios:npm install axios --save

安装完毕之后我们就可以使用了,如下尝试,注意后端接口API:apis.imooc.com/api/并且添加上icode这个参数,如下已成功返回数据,说明我们的接口已经跑通啦

前面 http://apis.imooc.com/api 可以避免重复,如下,axios给我们提供了axios.default.baseUrl

后面这个icode我们也可以如下,axios提供了Interceptors,称为拦截器,我们来看看怎么用

那会不会影响我们其他参数的添加呢,如下,发现不会影响

上面是测试,最终我们main.ts中如下

五、使用vuex action 发送异步请求

之前我们专栏列表逻辑是从testData中读数据然后展示在界面上,testData是我们自己造的一些数据。现在有了后端接口,我们就多了一步发送请求,获取数据,最后展示页面的过程。

我们需要添加新的mutation,触发数据变化,但是文档中写了mutation有一个特殊的规则,就是mutation必须是同步函数,而axios请求是异步请求,vuex提出了一个新的概念来替换这个名字即Action,Action类似于mutation,不同点在于,Action可以提交的是mutation,而不是直接变更状态,Action可以包含任意异步操作

如下,vuex中引入axios,然后添加actions,在actions中定义一个函数,函数中axios请求专栏列表数据,请求回来后通过commit调用mutations,然后在mutations中定义一个函数,在函数中把获取回来的专栏列表数据赋值给store中的专栏列表数据属性中

然后我们在页面中调用这个actions即可,如下,在组件挂载的时候调用,通过dispatch调用action,即如下atore.dispatch(‘actions中的函数’)

如下,发现可以获取到数据了,但是图片出现了问题

是因为返回的数据中头像图片avator是对象,所以要修改类型啥的。

因为返回的数据结构和我们之前定的有出入,所以我们需要进行修改一下,如下

主要就是看接口文档中这些返回数据的类型是什么样,进行对应调整即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1420852.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

软件测试之 单元测试

你好,我是Qiuner. 为记录自己编程学习过程和帮助别人少走弯路而写博客 这是我的 github gitee 如果本篇文章帮到了你 不妨点个赞吧~ 我会很高兴的 😄 (^ ~ ^) 想看更多 那就点个关注吧 我会尽力带来有趣的内容 单元测试 在eclipse中 导包 放入提前准备的包 遇到这…

Python 中的 Lambda 函数:简单、快速、高效

大家好,今天再给大家介绍一个python的一个强大工具Lambda 函数,它允许你快速定义简单的匿名函数。这种函数是“匿名的”,因为它们不需要像常规函数那样被明确命名。 在本文中,我们将通过清晰的解释和实用的示例,深入了…

阮怀俊谈如何盘活和挖掘乡村文旅资源

近年来,浙江凭借高水平建设新时代美丽乡村,各项工作持续走在全国前列,最近,在国家发展改革委关于恢复和扩大消费措施的通知中也提到: “推广浙江‘千万工程’经验,建设宜居宜业和美乡村。实施文化产业赋能乡…

【RAG 论文】FiD:一种将 retrieved docs 合并输入给 LM 的方法

论文: Leveraging Passage Retrieval with Generative Models for Open Domain Question Answering ⭐⭐⭐⭐ EACL 2021, Facebook AI Research 论文速读 在 RAG 中,如何将检索出的 passages 做聚合并输入到生成模型是一个问题,本文提出了一…

基于深度学习神经网络的AI图像PSD去雾系统源码

第一步:PSD介绍 以往的研究主要集中在具有合成模糊图像的训练模型上,当模型用于真实世界的模糊图像时,会导致性能下降。 为了解决上述问题,提高去雾的泛化性能,作者提出了一种Principled Synthetic-to-real Dehazing (…

人工智能轨道交通行业周刊-第79期(2024.4.22-5.12)

本期关键词:无人机巡检、车机联控、减速顶、Agent、GraphRAG、RAGFlow 1 整理涉及公众号名单 1.1 行业类 RT轨道交通人民铁道世界轨道交通资讯网铁路信号技术交流北京铁路轨道交通网铁路视点ITS World轨道交通联盟VSTR铁路与城市轨道交通RailMetro轨道世界铁路那…

MFC窗口更新与重绘

窗口更新与重绘 窗口或控件更新其外观的情况通常包括以下几种: 窗口大小变化: 当用户调整窗口大小时,窗口的客户区大小会改变,需要重新绘制窗口内容以适应新的大小。 窗口重叠或暴露: 当窗口被其他窗口遮挡部分或完…

作为校招新人,他们如何在字节跳动做 AI 研究并中选 ICLR 的?

校招生和实习生在字节跳动,工作一年就中选 ICLR 2024 ,这是怎样一种体验? 就在 5 月 7 日至 5 月 11 日,2024 年度国际表征学习大会 ICLR 2024 在奥地利维亚纳举办。该活动是深度学习领域最重要的学术活动之一,由深度学…

pycharm 里面安装 codeium 插件的时候,不能够弹出登录界面

pycharm 里面安装 codeium 插件的时候,不能够弹出登录界面 pycharm 里面安装 codeium 插件的时候,不能够弹出登录界面--解决如下A pycharm 里面安装 codeium 插件的时候,不能够弹出登录界面–解决如下 #踩坑/pycharm/codeium插件无法登录 安…

C脚本实现WIncc模拟量趋势窗口弹出

文章目录 前言一、步骤及解析二、运行画面演示三、总结 前言 本文给出了一种基于C脚本实现点击输入输出域对象,弹出对应模拟量趋势窗口的方法。 一、步骤及解析 在Wincc变量管理中,添加两个变量; 示例如下: 将以上两个变量添加到…

pikachu靶场(xss通关教程)

(注:若复制注入代码攻击无效,请手动输入注入语句,在英文输入法下) 反射型xss(get型) 1.打开网站 发现有个框,然后我们在框中输入一个“1”进行测试, 可以看到提交的数据在url处有显示&#xf…

阮怀俊参与五龙乡黄沙村村企联办“强村公司”

为走好海岛县高质量发展共同富裕特色之路,探索村级集体经济发展新路径、扶持新模式、运行新机制,嵊泗县五龙乡黄沙村股份经济合作社与杭州山舍乡建乡村产业发展有限责任公司联办成“强村公司”。 创始人阮怀俊表示,双方就融合乡域发展和文旅产…

【考研数学】汤家凤“免单“数学题被吐槽‘太难’,老汤回应「怎么还有脸笑」,网友:这些题有毒!

我看了汤家凤老师出的几道题,实际上对于考研的同学来说,确实是送分题 第一个是三角函数变换中的万能公式;第二个e^x的泰勒展开公式;第三个是第一类重要极限。只要复习过,那基本上都能正常做出来。 至于汤家凤老师说「…

纯CSS实现步骤条

纯CSS实现纵向Steps步骤条效果 效果图 实现思路 步骤条是一种用于引导用户按照特定流程完成任务的导航条,在各种分步表单交互场景中广泛应用。步骤条通常由编号、名称和引导线三个基本要素组成。本文中要实现的是一个简单的步骤条,包含上述三个基本要素…

AI预测福彩3D采取887定位策略+杀断组+杀和尾+杀和值012缩水测试5月12日预测第1弹

前段时间工作太忙,手头上各种事情较多,没有静下心来对我的AI模型预测结果进行进一步分析筛选,导致最近连续几期与实际开奖结果相差较大。当然,客观来说,搞6码定位的确难度比较大,昨天跟几个常年研究3D的彩友…

2024最新最全【网络安全】逆向工程教学

逆向工程 以设计方法学为指导,以现代设计理论、方法、技术为基础,运用各种专业人员的工程设计经验、知识和创新思维,对已有产品进行解剖、深化和再创造。 逆向工程不仅仅在计算机行业、各行各业都存在逆向工程。 计算机行业逆向工程 计算…

ssm120基于SSM框架的金鱼销售平台的开发和实现+jsp

金鱼销售平台 摘 要 随着科学技术的飞速发展,各行各业都在努力与现代先进技术接轨,通过科技手段提高自身的优势;对于金鱼销售平台当然也不能排除在外,随着网络技术的不断成熟,带动了金鱼销售平台,它彻底改…

【GlobalMapper精品教程】080:WGS84转UTM投影

参考阅读:ArcGIS实验教程——实验十:矢量数据投影变换 文章目录 一、加载实验数据二、设置输出坐标系三、数据导出一、加载实验数据 打开配套案例数据包中的data080.rar中的矢量数据,如下所示: 查看源坐标系:双击图层的,图层投影选项卡,数据的已有坐标系为WGS84地理坐标…

变色龙还是树懒:揭示大型语言模型在知识冲突中的行为

你是知识变色龙还是树懒?我今天在ICLR学到一个很有趣的术语,叫做证据顺序(order of evidence)。 大模型RAG处理知识冲突的探讨: 在检索增强生成(Retrieval-Augmented Generation, RAG)的过程中,技术团队会将检索到的前几名文档作为证据,并提示(prompt)给大型语言模型(Large La…

数据结构:包装类初始泛型

目录 1.包装类1.1 基本数据类型和对应的包装类1.2 装箱和拆箱 2.什么是泛型3.引出泛型3.1 语法3.2 泛型的使用 4.泛型是如何编译的4.1 擦除机制4.2 为什么不能实例化泛型类型数组 5.泛型的上界5.1 语法5.2 示例5.3 复杂示例 6.泛型方法6.1 定义语法6.2 示例6.3 使用示例-可以类…