ruoyi-cloud-plus添加一个不要认证的公开新页面

devtools/2024/9/22 19:37:05/

文章目录

    • 一、前端
      • 1. 组件创建
      • 2. src/router/index.ts
      • 3. src/permission.ts
    • 二、后端

版本
RuoYiCloudPlusv2.1.2
plus-uiVue3 ts

以新增一个公开的课程搜索页面为例。

一、前端

1. 组件创建

在view目录下创建一个页面的vue代码,比如

src/views/customer/searchPage/index.vue

2. src/router/index.ts

为其编制一个路由。在constantRoutes中添加一组dict信息。比如

{path: '/courseSearch',component: () => import('@/views/customer/searchPage/index.vue'),hidden: true
},

3. src/permission.ts

把页面加入前端的whiteList

const whiteList = ['/login','/register','/social-callback','/courseSearch'
];

在浏览器输入http://localhost/courseSearch,至此这个页面已经不用登录就可以访问了。

二、后端

但是后端是有网关和认证模块的,虽然前端页面可以不用登陆了,但是如果这个页面还需要从后端获取数据,那么后端对应的controller也应该被open。

1. 设计思想

不同模块有不同的url前缀,比如

routes:# 认证中心- id: ruoyi-authuri: lb://ruoyi-authpredicates:- Path=/auth/**filters:- StripPrefix=1# 代码生成- id: ruoyi-genuri: lb://ruoyi-genpredicates:- Path=/tool/**filters:- StripPrefix=1

并且每个模块都有可能需要open一些controller,不需要认证。那么我们进行统一设定,比如课程模块,url前缀为course,那么/course/open/**就都是被公开的端点。于是在gateway只需要把/*/open/**加入白名单即可。

ruoyigatewayyml_67">2. ruoyi-gateway.yml

在nacos中修改gateway的配置文件,把/*/open/**加入whites。

security:ignore:whites:- /auth/code- /auth/logout- /auth/login- /auth/binding/*- /auth/social/callback- /auth/register- /auth/tenant/list- /resource/sms/code- /*/v3/api-docs- /*/error- /csrf- /*/open/**

3. 开发Controller

在course模块中,新建一个CourseOpenController.java,内容示例如下

package org.dromara.course.controller;import org.dromara.course.domain.bo.CourseCategoryBo;
import org.dromara.course.domain.vo.CourseCategoryVo;
import org.dromara.course.service.CourseCategoryService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import java.util.List;@RestController
@RequestMapping("/open")
public class CourseOpenController {@AutowiredCourseCategoryService categoryService;@GetMapping("/category/list")public List<CourseCategoryVo> list(CourseCategoryBo bo) {return categoryService.queryList(bo);}}

重启网关和课程模块即可。

在这里插入图片描述


http://www.ppmy.cn/devtools/10407.html

相关文章

华媒舍:百度竞价排名如何提升点击率

在网络推广中&#xff0c;提升点击率是十分重要的。运用百度搜索引擎广告是一种常用的提升点击率的形式。而百度竞价推广是搜索引擎所提供的一种付费流量方法&#xff0c;根据提高网站在搜索结果中的排名&#xff0c;可以有效提升点击率。下面我们就详细介绍如何运用百度竞价推…

720云手机电动云台全新上市,让手机能自动拍摄亿万像素VR全景

2024年3月&#xff0c;720云正式发布手机拍摄专业级VR全景的云台——720云手机电动云台(LG-05)&#xff0c;这款云台极大程度上把拍摄过程简化到极致。云台电机搭载先进的2.4G/蓝牙双模无线遥控功能和4500mAh电池&#xff0c;保证了无需连续充电的长时间使用。全自动拍摄模式和…

JS - 以工厂模式和原型模式方式建造对象、JS的垃级回收机制、数组的使用

创建对象的方式 使用工厂方法来建造对象 在JS中我们可以通过以下方式进行创建对象&#xff1a; var obj {name:"孙悟空",age:18,gender:"男",sayName:function(){alert(this.name);}};var obj2 {name:"猪八戒",age:28,gender:"男",…

OpenHarmony 视图加载——ImageViewZoom

简介 ImageViewZoom 支持加载 Resource 或 PixelMap 图片&#xff0c;支持设置图像显示类型功能&#xff0c;支持缩放功能&#xff0c;支持平移功能&#xff0c;双击放大功能&#xff0c;可以监听图片大小&#xff0c;资源变化事件&#xff0c;支持清除显示图片功能。 效果展示…

[生活][杂项] 如何正确打开编织袋

编织袋打开的正确姿势 面对单线分离右边的线头&#xff0c;然后依次拉开即可

Stabble Diffusion 本地部署教程详解

引言 随着人工智能技术的快速发展&#xff0c;文本到图像&#xff08;Text-to-Image, T2I&#xff09;模型已经成为研究和应用的热点。其中&#xff0c;Stable Diffusion 是一款开源的 T2I 模型&#xff0c;以其出色的图像质量和生成能力而受到广泛关注10。然而&#xff0c;要…

递归、搜索与回溯算法——二叉树的深搜

T04BF &#x1f44b;专栏: 算法|JAVA|MySQL|C语言 &#x1faf5; 小比特 大梦想 此篇文章与大家分享分治递归、搜索与回溯算法中关于二叉树的深搜的专题 如果有不足的或者错误的请您指出! 目录 1.计算布尔值的二叉树1.1解析1.2题解 2.求根节点到叶子节点数字之和2.1解析2.2题解…

C# - 反射获取字段/属性/方法

using System; using System.Reflection;public class MyClass {public int MyField;public int MyProperty { get; set; }public void MyMethod() { } }class Program {static void Main(){Type type typeof(MyClass);// 获取字段FieldInfo fieldInfo type.GetField("M…