位置: IT常识 - 正文

vue解决Not allowed to load local resource(vue解决跨域问题)

编辑:rootadmin
vue解决Not allowed to load local resource 前言

推荐整理分享vue解决Not allowed to load local resource(vue解决跨域问题),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue解决中文乱码,vue解决异步取值问题,vue解决浏览器兼容性问题,vue解决异步请求问题,vue解决数据量过大的问题,vue解决跨域问题,vue解决数据量过大的问题,vue解决跨域的几种办法,内容如对您有帮助,希望把文章链接给更多的朋友!

在进行通过本地路径进行加载图片的时候,突然就报了这个问题 Not allowed to load local resource 这个是由于安全性的问题,导致浏览器禁止直接访问本地文件 那么,这边我说一下我具体是怎么解决的吧

问题描述

我的项目是用的vue的vantui框架+springboot 然后我后端给前端的数据是一个路径,具体如下图: 也就是一个本地文件路径的集合

// 为了防止后续图片失效看不到内容,在这标注其中一条数据D:\\EXAM_MATERIAL\\NEW-STAFF\\IMAGE\\B-0001\\B-0001 公司简介_01.png

而我在页面中的代码是使用的是

// imagebase64是自定义的变量<img :src="imgBase64" style="position: relative;width:100%;height:100%"/>vue解决Not allowed to load local resource(vue解决跨域问题)

我用了一个自定义的变量直接接收路径显示给它 通过按钮上一页和下一页改变自定义变量的值 如: 以下代码只写成最主要的代码,不包括样式,以及不代表我项目中具体代码

<template><div>// 图片显示<div><img :src="imgBase64" style="position: relative;width:100%;height:100%"/></div>// 按钮控制上一页和下一页<div><button @click="lastPage">上一页</button><button @click="nextPage">下一页</button></div><div></template><script>// 获取后端数据接口import { getImageList } from "../xxx"export default {name: "xxx",// 自定义属性 data() { return { slideImageList: [], // 接收后端数据 currentPage: 0, // 当前显示第几张图片 imgBase64: "", // 显示到图片的信息 } }, // 方法 methods: { // 获取后端数据方法 getImage() { getImageList ().then(res => { // 接收数据(这里根据自己接口来获取)this.slideImageList = res.data.data// 设置初始显示图片this.imgBase64 = this.slideImageList[0];}) }, // 上一页 lastPage() { if (this.currentPage !=0) { this.currentPage--; this.imgBase64 = this.slideImageList[this.currentPage]; } }, // 下一页 nextPage() { this.currentPage++; this.imgBase64 = this.slideImageList[this.currentPage]; },}, mounted() { // 加载页面获取数据 this.getImage(); },}</script>

然后就导致了这么一个问题出现

解决步骤

通过上面我们发现,直接将文件路径作为图片显示是不可用的, 于是我对获取后端接口数据作了处理

<script>// 获取后端数据接口import { getImageList } from "../xxx"export default {name: "xxx",// 自定义属性 data() { return { slideImageList: [], // 接收后端数据 currentPage: 0, // 当前显示第几张图片 imgBase64: "", // 显示到图片的信息 } }, // 方法 methods: { // 获取后端数据方法 getImage() { getImageList ().then(res => { // 接收数据(这里根据自己接口来获取)this.slideImageList = res.data.data// 定义变量接收处理过的数据let urlList = [];// 以路径D:\\EXAM_MATERIAL\\NEW-STAFF\\IMAGE\\B-0001\\B-0001 公司简介_01.png为例// 遍历数据for (let i = 0; i < this.slideImageList.length;i++) {// 定义临时变量接收遍历后的每条数据let path = this.sildeImageList[i];// 定义临时变量截取获取文件名称let name = path.substring(path.lastIndexOf("\\") + 1);// 定义临时变量接收最终处理后的结果let url = path.substring(0, path.lastIndexOf("\\") + 1).replace("D:\\EXAM_MATERIAL", "/EXAM_MATERIAL") + encodeURI(name);// 将处理后的结果加入到临时集合urlList.push(url);}// 清空接收的后端数据this.slideImageList = [];// 接收处理后的结果this.slideImageList = urlList;// 设置初始显示图片this.imgBase64 = this.slideImageList[0];}) }, // 上一页 lastPage() { if (this.currentPage !=0) { this.currentPage--; this.imgBase64 = this.slideImageList[this.currentPage]; } }, // 下一页 nextPage() { this.currentPage++; this.imgBase64 = this.slideImageList[this.currentPage]; },}, mounted() { // 加载页面获取数据 this.getImage(); },}</script>

即:

// 获取后端数据方法 getImage() { getImageList ().then(res => { // 接收数据(这里根据自己接口来获取)this.slideImageList = res.data.data// 设置初始显示图片this.imgBase64 = this.slideImageList[0];}) },

修改为:

// 获取后端数据方法 getImage() { getImageList ().then(res => { // 接收数据(这里根据自己接口来获取)this.slideImageList = res.data.data// 定义变量接收处理过的数据let urlList = [];// 以路径D:\\EXAM_MATERIAL\\NEW-STAFF\\IMAGE\\B-0001\\B-0001 公司简介_01.png为例// 遍历数据for (let i = 0; i < this.slideImageList.length;i++) {// 定义临时变量接收遍历后的每条数据let path = this.sildeImageList[i];// 定义临时变量截取获取文件名称let name = path.substring(path.lastIndexOf("\\") + 1);// 定义临时变量接收最终处理后的结果let url = path.substring(0, path.lastIndexOf("\\") + 1).replace("D:\\EXAM_MATERIAL", "/EXAM_MATERIAL") + encodeURI(name);// 将处理后的结果加入到临时集合urlList.push(url);}// 清空接收的后端数据this.slideImageList = [];// 接收处理后的数据this.slideImageList = urlList;// 设置初始显示图片this.imgBase64 = this.slideImageList[0];}) },修改代码后的结果

修改完之后,最终的结果如下:

结语

以上,为vue解决Not allowed to load local resource的过程

本文链接地址:https://www.jiuchutong.com/zhishi/281412.html 转载请保留说明!

上一篇:rtmservice.exe - rtmservice是什么进程 有什么用

下一篇:springboot整合Minio + vue 实现文件分片上传(完整代码)(springboot整合了哪些框架)

  • 税控盘开票软件访问数据库错误
  • 进项税额怎么抵税
  • 进出口税则是什么意思
  • 增值税专用发票几个点
  • 航空公司能开电动车吗
  • 小企业会计准则和一般企业会计准则的区别
  • 劳务企业向总包提供
  • 虚开增值税立案标准
  • 视同销售不开票如何计算增值税?
  • 货到票未到怎么入账
  • 红字发票信息开错该怎么撤回与相关会计处理
  • 接受投资款尚未工商变工账务怎么做处理?
  • 合伙企业需要缴纳什么税
  • 公司股权转让应纳税额怎么算
  • 迁移税务需要带什么资料
  • 超过三个月开发票
  • 营改增后手写发票还能用吗
  • 协方差cov计算公式展开
  • 使用时间长但金币不见了
  • 购买厂房可以一次买卖吗
  • 季报小微企业不包括哪些
  • hdmi连接电视无法全屏
  • 在win7系统中如何让电脑恢复出厂设置方法
  • 月末计提固定资产折旧时,应借记
  • 家里的无线网连着连着就断了
  • 报销差旅费怎么算
  • 出租车车票可以出卖吗
  • 职工教育经费超过扣除限额的时候调增还是调减
  • php vld
  • 企业缴纳职工社保是否可以缴纳三险
  • 股份支付费用是股权激励成本吗?
  • 火车票可以直接去火车站买吗
  • 双重差分法(DID)
  • 国际货运代理存在的必要性有哪些方面
  • 业务招待费包括哪些内容和费用
  • 公司注册完成以后需要做哪些事情
  • 民营医院发票样式
  • 医院出的收据就是发票吗
  • 关于转租电费收取规定
  • 企业应付债券增加说明了什么
  • 个人独资企业的
  • 装修专票是几个点
  • 小规模无票收入纳税申报表怎么填
  • 在建工程的
  • 关税征收方式
  • 支付土地租金计入什么科目里面
  • 一次性伤残就业补助金有时间限制吗
  • 税交多了可以退吗
  • 报销如果没有发票怎么补救
  • 租房开的发票收的税如何做账?
  • 金蝶当月没有账如何结转到下月
  • 准备金支出是否含税
  • 产值和销售收入可以一样吗
  • 公对公转账多久能到账
  • win8蓝屏代码大全
  • Windows Server 2008下Backup功能全通透
  • ubuntu系统睡眠
  • centos查看inode
  • win7系统鼠标右键无法弹出菜单
  • win8的系统
  • linux命名命令
  • frameworkservic.exe是什么进程 有什么作用 frameworkservic进程查询
  • win8怎么查看系统信息
  • linux中查看文件
  • win7不允许我更改系统设置
  • win10一年更新几次
  • cocos2djs
  • cocos设置中文
  • jquery获取input内容
  • ansible客户端需要装python
  • jquery方法查询api
  • jquery属性选择器,选取所有带href
  • 孙其功陪你学之——unity3d进程暂停
  • android 4.2
  • 税控盘状态
  • 税款怎么查询
  • 昆山华润燃气多少钱一方
  • 免税饲料发票怎么开具
  • 营业税未达起征点
  • 公司完税证明去哪里开具
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设