当前位置: 首页 > news >正文

Vue项目通过内嵌iframe访问另一个vue页面,获取token适配后端鉴权(以内嵌若依项目举例)

1. 改造子Vue项目进行适配(ruoyi举例)

(1) 在路由文件添加需要被外链的vue页面配置

// 若依项目的话是 router/index.js文件
{
    path: '/contrast',
    component: () => import('@/views/contrast/index'),
    hidden: true
},

(2) 开放白名单

// 若依项目的话是 permission.js 文件
const whiteList = ['/login', '/register','/contrast']

(3) 在被外链的页面获取父项目传递的token

created() {
    var query = this.$route.query;
    if (query.token) {
      // 塞入外部链接传入的token
      localStorage.setItem('externalToken', query.token)
      // 若依使用的Cookies插件在内嵌获取值时获取不到改用 localStorage
      // setToken(query.token)
    }
  },

(4) 改造request请求的token封装

// 若依项目的话是 request.js文件
let externalToken = localStorage.getItem('externalToken');
if (externalToken) {
	config.headers['Authorization'] = externalToken
}

添加位置
在这里插入图片描述

2. 父Vue项目配置一个菜单指向一个Vue页面

<template>
  <div v-if="src">
    <iframe :src="src" width="100%" height="600px">

    </iframe>
  </div>
</template>

<script>
  export default {
    data() {
      return {
        src: '',
        // 子vue项目的router路径
        url: 'http://127.0.0.1/contrast',
        token: ''
      }
    },
    created() {
      this.src = `${this.url}"?token=${this.token}`
    }
  }
</script>

<style scoped lang="scss">

</style>
http://www.dtcms.com/a/56579.html

相关文章:

  • uniapp 微信小程序 升级 uniad插件版本号
  • 量子状态优化:探索量子计算的新维度
  • Grafana
  • Redis maven项目 jedis 客户端操作(一)
  • 《Python实战进阶》No13: NumPy 数组操作与性能优化
  • 点云软件VeloView开发环境搭建与编译
  • ubuntu22.04机器人开发环境配置
  • 使用Wireshark截取并解密摄像头画面
  • golang从入门到做牛马:第三篇-Go程序的“骨骼架构”
  • js 判断当前时间是属于早上、上午 、中午、下午 或者晚上
  • 5人3小时复刻Manus?开源OpenManus项目全解剖,我的DeepSeek股票报告这样诞生
  • SAP DOI EXCEL宏的使用
  • 面试基础---Spring Cloud 微服务架构中的网关:Spring Cloud Gateway 与 Zuul 深度解析
  • 蓝耘智算平台部署deepseek-深度学习
  • 计算机毕业设计SpringBoot+Vue.js华府便利店信息管理系统(源码+文档+PPT+讲解)
  • 权限系统基础知识笔记
  • SpringBoot整合Rabbitmq
  • 第8章 访问管理(网络安全防御实战--蓝军武器库)
  • 顶点着色器和片段着色器
  • HarmonyOS 应用程序包结构 (发布态)
  • 【Linux】重定向输出到文件
  • AI赋能企业协作5-基于Langchain的企业应用落地
  • 【JAVA架构师成长之路】【Redis】第12集:Redis缓存雪崩
  • uniapp使用蓝牙,usb,局域网,打印机打印
  • AS32X601双核锁步MCU技术优势分析
  • 【人工智能基础2】【1】基础知识:数学、Python、Docker技术
  • LLM 学习(一 序言)
  • 基于Kubernetes部署MySQL主从集群
  • 软考初级程序员知识点汇总
  • html流程图