基于 springcloud 的 若依 / RuoYi-Vue 学习笔记

https://gitee.com/y_project/RuoYi-Vue

感觉这个框架真不错 学习时遇到的问题一并记录

运行逻辑 需要跑后端 和前端 通过访问前端 前端转发请求到后端 后端处理数据后返回

前端vuecli 需要node环境 80端口
接口的访问走了个 vue.config.js文件的  devServer(这个配置下转发的请求)-proxy-pathRewrite 可以看到真正的接口地址和请求的参数都被替换了

后端 java springboot  8080端口 

数据库是ry-vue 两个sql文件执行到一个数据库中

接口权限控制是 SecurityConfig  文件的 configure 方法 这里新增了一个接口的请求


    @Override
    protected void configure(HttpSecurity httpSecurity) throws Exception {
        httpSecurity
                //新增自定义权限控制
                .antMatchers(
                        HttpMethod.POST,
                        "/api/**").permitAll()

 

还有的权限控制在 nacos 配置的 在 qhcrm-gateway-dev.yml 配置项下 添加到白名单中即可

spring:
  cloud:
    gateway:
      discovery:
        locator:
          lowerCaseServiceId: true
          enabled: true
      routes:
        #
        - id: xxx-auth
          uri: lb://xxx-auth
          predicates:
            - Path=/auth/**  # 这里声明了api路径
          filters:
            # 验证码处理
            - CacheRequestFilter
            - ValidateCodeFilter
            - StripPrefix=1
       
       

# 不校验白名单
ignore:
  whites:
    - /auth/login

接口流程相关

http://localhost:8080/auth/app/login  纯java环境下开发的真实默认接口 http://localhost:8080 为ip+端口号 java的运行地址 auth 为在nacos中注册的微服务的 别名  predicates:  - Path=auth 后面的app/login则是在方法中定义的

java代码如下

    @PostMapping("/app/login")
    public R<?> appLogin(@RequestBody LoginBody form) {

 

通过vue的这些配置可以简化地址为http://127.0.0.1/dev-api/auth/app/login 含义为   将vue请求伪装成以及凡是请求http://127.0.0.1/dev-api/的  都转发到 http://localhost:8080/ 下

   proxy: {
      // detail: https://cli.vuejs.org/config/#devserver-proxy
      [process.env.VUE_APP_BASE_API]: {
        target: `http://localhost:8080`,
        //target: `http://82.156.105.220:8080`,
        changeOrigin: true,
        pathRewrite: {
          ['^' + process.env.VUE_APP_BASE_API]: ''
        }
      }
    },

可以再次通过nginx的反向代理 美化地址

肯定是 通过VUE_APP_BASE_API配置的 可能是自动部署的  待验证

 

cloud

http://doc.ruoyi.vip/ruoyi-cloud/ 文档部署即可

原理 通过nacos 配置数据库密码 等 配置  其也是个微服务需要首先运行 需要注意的是 按照若依框架的配置生成的数据库 

4、创建数据库ry-config并导入数据脚本ry_config_2021xxxx.sql(必须)
5、配置nacos持久化,修改conf/application.properties文件,增加支持mysql数据源配置

# db mysql
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://localhost:3306/ry-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user=root
db.password=password

这里就完成了 nacos 和若依cloud的配置关联

 

可能会报 找不到 maven-compiler-plugin 

<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>

搜索 该插件最新版本 填上版本即可

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值