案例开发-前端开发及调试(二)| 学习笔记

简介: 快速学习案例开发-前端开发及调试。

开发者学堂课程【Spring Boot+Vue.js+FastDFS实现分布式图片服务器 :案例开发-前端开发及调试(二)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/742/detail/13148


案例开发-前端开发及调试(二)

三、解决跨域问题

1.前端端口7283要想访问22100端口是需要跨域问题的解决。在前后端分离开发的时候最常用的跨域解决方案是通过代理

可以将前端的地址前面干掉即(http://localhost:22100)

action="/fileSystem/upload"

通过7283的 Nginx 代理转发就可以解决跨域问题

image.png

2.代理转发:配置 fileSystem 转发代理

在 Nginx7283 服务中 凡是以 /fileSystem 开头的 都让其转发到

http://127.0.0.1:22100/filesystem/

这就是通过代理解决跨域问题的方法。

image.png

重启服务器,再刷新浏览器,上传图片,断点进入,鼠标当上 file ,看到文件已经进入。图片上传成功,接下来进行获取其原始文件名、拓展名。

 

四、获取原始文件名

image.png

1.图中步骤:向 upload 目录传入已经上传的文件。将刚上传问文件上传到 web 服务器上的 upload 目录下面。将程序向下走一步,在 upload 下面就可以刚看到刚刚上传的 png 图片,则代表图片上传成功。

image.png

2.接下来向 fastDFS 中上传图片,可以得到文件的 ID,但是可以发现的是,ID 中多了一个点,本身 extention 拓展名自带一个点,自动将点累加到后面。所以需要修改程序。

如果本身文件有拓展名,那么 extention 可以改为 null,他会自动获取其拓展名。

这样获取到的文件 ID 就是正确的。

3.将获取到的图片放到 Nginx 服务中,以背不时之需 。

image.png

4.在将来开发的时候,如果文件上传成功就能获取相应的 ID,就可以将上传文件的路径,和商品信息能够在数据库进行存储绑定。查询商品就可以将文件的 upload 的地址拿到,就可以在页面显示图片。

image.png

image.png

在回到浏览器,跟踪结果的时候,最终返回了 JSON 数据,并且 json 数据中就有上传文件的路径。以上则代表上传图片成功。

查看其原始代码


五、预览功能

image.png

1.点击加号并没有反应,不能预览。打开 el 组件使用说明。当要进行预览的时候,他会通过钩子方法来调用 on-preview

image.png

2.需要完成 on-preview 进行预览。

:on-preview="handlePictureCardPreview”  //预览方法定义

在method中:{handlePictureCardPreview(file) //传入 file 参数

console.log(file)可以在控制台打印一下查看 file 具体内容

this.dialogImageUrl=file.response.filePath;

this.dialogVisbile=true;

}

3.{...}就是 file 对象

最重要把文件的真实路径赋值给 dialogImageUrl(vue 实例中的字段),让 file 下面的 response.filePath 等于dialogImageUrl;并且在预览的时候需要将 dialogVisbile设置为true

image.png

再次刷新运行

image.png

4.不能够成功运行,显示找不到图片,原因是:图片通过 Nginx 访问,需要访问192.168.101.64

将图片服务器的地址添加即可成功预览图片。

this.dialogImageUrl =”http://192.168.101.64/"+file.response.filePath”

image.png 

5.右键检查查看图片地址。发现该地址来源于 fastDFS 分布式文件系统得地址,所以复制地址连接就可以在浏览器直接查看。这就是文件上传,最终上传到 fastDFS 中,并且预览的时候也从 fastDFS 中获取。

到这里就将前端部分实现完成。

 

六、总结

1.做前端开发需要确定使用的 js 和 css 的库,在这里面用到了 vue.js 和  element.ui,将两个库放入工程当中,并且在 html 中引入库,可以在 element 官网打开说明文档,根据提示将 el 代码复制到 div( vue 数据区)中 vue 创建格式三大部分:el、数据区、方法区以及一些钩子方法。

2.上传完成之后,钩子方法:预览。当点击预览的时候会调用方法,这个方法将刚刚上传的文件的数据对象传进来,最终就实现了前端 vue 实现文件上传。

3.首先将文件上传 到 web 服务器,web 服务器将文件上传到 fastDFS 文件系统,当用户预览的是时候通过 Nginx 图片服务代理,浏览转发到 fastDFS 文件系统,最终就完成了整个案例的开发。

4.用户浏览图片,用户打开网站,查看商品,浏览图片,刚刚已经讲过,在上传成功图片之后,fastDFS 文件系统会给我 fileID 文件的路径,需要将文件路径存到商品表的图片字段中。将来查询商品信息的时候,就可以将 fastDFS 文件路径查询到。最终可以实现通过 Nginx 浏览文件。

相关文章
|
10天前
|
前端开发 JavaScript API
(前端3D模型开发)网页三维CAD中加载和保存STEP模型
本文介绍了如何使用`mxcad3d`库在网页上实现STEP格式三维模型的导入与导出。首先,通过官方教程搭建基本项目环境,了解核心对象如MxCAD3DObject、Mx3dDbDocument等的使用方法。接着,编写了加载和保存STEP模型的具体代码,包括HTML界面设计和TypeScript逻辑实现。最后,通过运行项目验证功能,展示了从模型加载到保存的全过程。此外,`mxcad3d`还支持多种其他格式的三维模型文件操作。
|
2月前
|
JavaScript 前端开发 程序员
前端学习笔记——node.js
前端学习笔记——node.js
48 0
|
3天前
|
机器学习/深度学习 前端开发 算法
婚恋交友系统平台 相亲交友平台系统 婚恋交友系统APP 婚恋系统源码 婚恋交友平台开发流程 婚恋交友系统架构设计 婚恋交友系统前端/后端开发 婚恋交友系统匹配推荐算法优化
婚恋交友系统平台通过线上互动帮助单身男女找到合适伴侣,提供用户注册、个人资料填写、匹配推荐、实时聊天、社区互动等功能。开发流程包括需求分析、技术选型、系统架构设计、功能实现、测试优化和上线运维。匹配推荐算法优化是核心,通过用户行为数据分析和机器学习提高匹配准确性。
22 3
|
28天前
|
前端开发 数据处理 Android开发
Flutter前端开发中的调试技巧与工具使用方法,涵盖调试的重要性、基本技巧如打印日志与断点调试、常用调试工具如Android Studio/VS Code调试器和Flutter Inspector的介绍
本文深入探讨了Flutter前端开发中的调试技巧与工具使用方法,涵盖调试的重要性、基本技巧如打印日志与断点调试、常用调试工具如Android Studio/VS Code调试器和Flutter Inspector的介绍,以及具体操作步骤、常见问题解决、高级调试技巧、团队协作中的调试应用和未来发展趋势,旨在帮助开发者提高调试效率,提升应用质量。
45 8
|
1天前
|
前端开发 搜索推荐 安全
陪玩系统架构设计陪玩系统前后端开发,陪玩前端设计是如何让人眼前一亮的?
陪玩系统的架构设计、前后端开发及前端设计是构建吸引用户、功能完善的平台关键。架构需考虑用户需求、技术选型、安全性等,确保稳定性和扩展性。前端可选用React、Vue或Uniapp,后端用Spring Boot或Django,数据库结合MySQL和MongoDB。功能涵盖用户管理、陪玩者管理、订单处理、智能匹配与通讯。安全性方面采用SSL加密和定期漏洞扫描。前端设计注重美观、易用及个性化推荐,提升用户体验和平台粘性。
11 0
|
1月前
|
前端开发 JavaScript 安全
揭秘!前端大牛们如何高效解决跨域问题,提升开发效率!
【10月更文挑战第30天】在Web开发中,跨域问题是一大挑战。本文介绍前端大牛们常用的跨域解决方案,包括JSONP、CORS、postMessage和Nginx/Node.js代理,对比它们的优缺点,帮助初学者提升开发效率。
67 4
|
2月前
|
人工智能 前端开发 测试技术
探索前端与 AI 的结合:如何用 GPT-4 助力开发效率
本文介绍了 GPT-4 如何成为前端开发者的“神队友”,让开发变得更加高效愉快。无论是需求到代码的自动生成、快速调试和性能优化,还是自动化测试和技术选型,GPT-4 都能提供极大的帮助。通过智能生成代码、捕捉 BUG、优化性能、自动化测试生成以及技术支持,GPT-4 成为开发者不可或缺的工具,帮助他们从繁重的手动任务中解脱出来,专注于创新和创意。GPT-4 正在彻底改变开发流程,让开发者从“辛苦码农”转变为“效率王者”。
50 0
探索前端与 AI 的结合:如何用 GPT-4 助力开发效率
|
2月前
|
JavaScript 前端开发 应用服务中间件
Vue开发中,在实现单页面应用(SPA)前端路由时的hash模式和history模式的区别及详细介绍
Vue开发中,在实现单页面应用(SPA)前端路由时的hash模式和history模式的区别及详细介绍
43 0
|
2月前
|
存储 人工智能 前端开发
前端大模型应用笔记(三):Vue3+Antdv+transformers+本地模型实现浏览器端侧增强搜索
本文介绍了一个纯前端实现的增强列表搜索应用,通过使用Transformer模型,实现了更智能的搜索功能,如使用“番茄”可以搜索到“西红柿”。项目基于Vue3和Ant Design Vue,使用了Xenova的bge-base-zh-v1.5模型。文章详细介绍了从环境搭建、数据准备到具体实现的全过程,并展示了实际效果和待改进点。
178 2
|
2月前
|
人工智能 自然语言处理 运维
前端大模型应用笔记(一):两个指令反过来说大模型就理解不了啦?或许该让第三者插足啦 -通过引入中间LLM预处理用户输入以提高多任务处理能力
本文探讨了在多任务处理场景下,自然语言指令解析的困境及解决方案。通过增加一个LLM解析层,将复杂的指令拆解为多个明确的步骤,明确操作类型与对象识别,处理任务依赖关系,并将自然语言转化为具体的工具命令,从而提高指令解析的准确性和执行效率。
下一篇
DataWorks