从零开始,手打一个权限管理系统(第十七章 适配前端和添加新服务)

文章讲述了如何修改前端登录和退出接口的地址,添加前端代码的代理配置,并演示了如何通过SpringCloud接入新服务和新数据库,包括创建service-demo.yml配置文件,配置数据源,并在Nacos中进行管理。
摘要由CSDN通过智能技术生成

第十七章 适配前端和添加新服务


前言

这一章很简单,就是将我们分布式的服务接口跟之前的前端代码做适配,使其能够正常访问;再就是添加一个新的服务和新的数据库,使其能够正常访问。


一、前端代码修改

修改登录和退出接口地址的前缀

export function login(data: LoginData): Promise<string> {
  return axios.post('/auth/login', {}, { params: data });
}

export function logout() {
  return axios.post('/auth/logout');
}

开发环境再加一个auth的代理

proxy: {
        '/auth': {
          target: loadEnv('development', '.').VITE_PROXY,
          rewrite: (path: string) => path.replace(/^\/auth/, '/auth'),
          configure: (server) =>
            // 拦截请求 打印地址。方便辨认重定向后的地址是否正确 没有端口信息
            server.on('proxyReq', (req: any) =>
              console.log(`${req.host}${req.path}`)
            ),
        },
        '/upms': {
          target: loadEnv('development', '.').VITE_PROXY,
          rewrite: (path: string) => path.replace(/^\/upms/, '/upms'),
          configure: (server) =>
            // 拦截请求 打印地址。方便辨认重定向后的地址是否正确 没有端口信息
            server.on('proxyReq', (req: any) =>
              console.log(`${req.host}${req.path}`)
            ),
        },
      },

测试是可以正常访问的

在这里插入图片描述


二、添加新服务

这个主要用来介绍如何做自定义开发,比如接入新的业务。

新增一个demo的服务,然后新加一个demo的数据库,最小pom配置文件如下:

    <dependencies>
        <!--注册中心客户端-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
        <!--配置中心客户端-->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
        </dependency>
        <!--web 模块-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>com.ailot</groupId>
            <artifactId>base-common</artifactId>
        </dependency>
        <dependency>
            <groupId>com.ailot</groupId>
            <artifactId>base-data</artifactId>
        </dependency>
    </dependencies>

在nacos新增名为service-demo.yml的配置文件


# 数据源
spring:
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    druid:
      driver-class-name: com.mysql.cj.jdbc.Driver
      username: root
      password: root
      url: jdbc:mysql://base-mysql:3306/demo?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8&allowMultiQueries=true&allowPublicKeyRetrieval=true
# Logger Config sql日志
logging:
  level:
    com.ailot.cloud.demo.mapper: debug

配置好相关菜单项和前端页面后启动测试
在这里插入图片描述

三、结束语

权限管理系统的开发到这里就结束了,后面的章节将会在分布式架构的基础上做新的业务扩展,主要方向还是电商,所以后期的内容将会更加贴近实战,感兴趣的伙计们不要错过了。

当前版本tag:2.0.2
代码仓库


四、 体验地址

后台数据库只给了部分权限,报错属于正常!
想学的老铁给点点关注吧!!!
欢迎留言交流!!!

我是阿咕噜,一个从互联网慢慢上岸的程序员,如果喜欢我的文章,记得帮忙点个赞哟,谢谢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值