若依框架自动生成代码,妙哉~

最近做的退费系统中有前端页面,作为一个前端小白要开始学习前端了吗?不可能的,因为我有今天的主角------若依框架。RuoYi是一款基于SpringBoot+Bootstrap的极速后台开发开源框架(划重点),有前后端分离版本、微服务版本、移动端版本,我使用的是前后端分离版本,前端用的VUE。

强大功能

1、根据数据库表自动生成前后端代码,可以选择字段是否在前端列表中展现、查询条件、必填项等。

2、自带用户、角色、菜单管理、权限管理、上传下载等基础功能,登录有验证码校验。

3、自带系统配置表,配置参数可以直接在页面配置。

......

用若依做简单的CRUD页面效率很高,减少很多工作量,只剩下有些特性化需求和页面需要独立开发

搭建项目

在官网把若依框架项目下载下来,导入maven依赖包,创建数据库ry并导入数据脚本ry_2021xxxx.sqlquartz.sql。需要在admin模块中添加正确的数据库、端口号等配置,配置完就能启动啦。

前端项目是VUE项目,需要下载nodejs,为什么VUE项目要下载nodejs呢?vue是通过 webpack来打包,而webpack 又基于 npm, npm需要nodejs环境。所以我们要下载nodejs和npm,下载完成后可以通过node -v和npm -v查看版本。

接着进入到项目路径,npm run dev就能启动vue项目啦~

跨域问题

打包前端工程到测试环境服务器,使用nginx访问dist文件夹,突然发现前端无法正确映射到后端的访问路径。我一直在看前端的vite.config.js,以为是有地方没配置正确,然后发现怎么改好像都不生效...

后面发现这个是npm run dev启动vue项目的时候才会生效,相当于是vue做代理,用nginx代理需要在nginx里面配置后端路径映射。

说起nginx代理就想到浏览器的跨域问题,跨域问题在面试中可能也会问到,其实就是同源策略(协议、域名、端口相同),浏览器不能访问不同源的url,目的是为了保护浏览器不受恶意攻击。

处理跨域问题有几种方案:

1、JSONP(JSON with Padding):JSONP 是一种利用 script标签的跨域技术。通过在请求中指定一个回调函数名,服务器将数据包裹在该函数的调用中返回给客户端。这种方法只支持 GET 请求,并且需要服务器端的支持。

2、CORS(Cross-Origin Resource Sharing):CORS 是现代浏览器支持的一种标准跨域解决方案。通过在服务器端设置响应头部,可以允许特定的域名或所有域名进行跨域请求。服务器端需要设置合适的响应头,例如在响应中添加 Access-Control-Allow-Origin 头部来指定允许的域名。

3、代理服务器(VUE和Nginx):可以设置一个代理服务器,将浏览器的请求转发到目标域名下,然后将响应返回给浏览器。这种方法需要在自己的服务器上设置代理规则,将请求转发到目标服务器上,并将响应返回给浏览器。这样,浏览器实际上是与同源的服务器进行通信,不存在跨域问题。

4、WebSocket:WebSocket 是一种全双工通信协议,它可以在浏览器和服务器之间建立持久连接,允许双方进行实时数据传输。由于 WebSocket 协议并不受同源策略的限制,因此可以用于解决跨域通信的问题。

相关推荐
wuyikeer几秒前
Spring Framework 中文官方文档
java·后端·spring
Victor3565 分钟前
MongoDB(61)如何避免大文档带来的性能问题?
后端
Victor35614 分钟前
MongoDB(62)如何避免锁定问题?
后端
wuyikeer1 小时前
Spring BOOT 启动参数
java·spring boot·后端
~无忧花开~1 小时前
React生命周期全解析
开发语言·前端·javascript·react.js·前端框架·react
子木HAPPY阳VIP2 小时前
Ubuntu 22.04 VMware 设置固定IP配置
人工智能·后端·目标检测·机器学习·目标跟踪
人间打气筒(Ada)2 小时前
如何基于 Go-kit 开发 Web 应用:从接口层到业务层再到数据层
开发语言·后端·golang
开心就好20252 小时前
使用Wireshark进行TCP数据包抓包分析:三次握手与四次挥手详解
后端·ios
cj81402 小时前
Prompt,Agent,Skill,Mcp分别于langchain有什么关系
前端