“此图片来自微信公众平台 未经允许不可引用“ 解决办法

简介: “此图片来自微信公众平台 未经允许不可引用“ 解决办法

image.png

在html里加


<meta name="referrer" content="no-referrer" />

是个办法 但是我们业务需要使用referer 所以我这里不能加。


<div class="iframeLogo" v-if="logoFileSrc && logoFileSrc.includes('mmbiz_')" v-html="ImgFun(logoFileSrc, 'logo')"></div>
<img class="info_logo" v-else :src="logoFileSrc">
  ImgFun (url, type) {
      let styles
      if (type === 'logo') {
        styles = 'width:58px;height:58px;position:absolute;top:0;left:0;'
      } else if (type === 'bg') {
        styles = 'width:300px;height:200px;position:absolute;top:0;left:0'
      }
      var randomId = 'img' + url
      window[`img${url}`] = '<img id="img" style=\'' + styles + '\' src=\'' + url + '?' + 'img' + '\'/><script>window.onload = function() { parent.document.getElementById(\'' + randomId + '\').height = 100+\'%\'; } <' + '/script>'
      var iframeStr = `<iframe id=${randomId} src="javascript:parent['img${url}']" frameBorder="0" scrolling="no" width="100%" ></iframe>`
      return iframeStr
    },

背景图:

<div class="iframeBG" v-if="bgFileSrc && bgFileSrc.includes('mmbiz_')" v-html="ImgFun(bgFileSrc, 'bg')"></div>
  .iframeBG {
    width: 285px;
    height: 198px;
    position: absolute;
    border-radius: 5px;
    overflow: hidden;
  }

注意: 当一个页面里出现两张相同路径的图片时,会出现样式错乱问题,如下图。  

image.pngimage.png

但是两张不同的图片就不会有问题


image.pngimage.png


分析iframe的代码得知,问题出在这行代码上window[img${url}] randomId

iframe嵌入的时候根据src="javascript:parent['img${url}']" randomId来决定嵌入的元素以及样式。


当两张图片一样时, 图片的url也是一模一样的。 虽然调用ImgFun方法的时候,进type的判断了。 但是由于id是相同的,在iframe进行渲染的时候,后面的样式代码会把前面的进行覆盖,所以会出现上面的问题。


解决办法: 既然是 “不唯一” 造成的问题,可以把id和img加参数 作为唯一标识。

 ImgFun (url, type) {
      let styles
      let img
      if (type === 'logo') {
        img = 'imgLogo'
        styles = 'width:58px;height:58px;position:absolute;top:0;left:0;'
      } else if (type === 'bg') {
        img = 'imgBg'
        styles = 'width:300px;height:200px;position:absolute;top:0;left:0;'
      }
      var randomId = img + url
      window[`${img}${url}`] = '<img id="img" style=\'' + styles + '\' src=\'' + url + '?' + 'img' + '\'/><script>window.onload = function() { parent.document.getElementById(\'' + randomId + '\').height = 100+\'%\'; } <' + '/script>'
      var iframeStr = `<iframe id=${randomId} src="javascript:parent['${img}${url}']" frameBorder="0" scrolling="no" width="100%" height="100%"></iframe>`
      return iframeStr
    },

image.png

可以看出 id唯一。 问题解决~


image.png

相关文章
|
机器学习/深度学习 小程序 前端开发
微信小程序——实现对话模式(调用大模型图片生成)
微信小程序——实现对话模式(调用大模型图片生成)
1084 3
【微信公众平台对接】有关【上传图文消息内的图片获取URL】调用示例
【微信公众平台对接】有关【上传图文消息内的图片获取URL】调用示例
528 0
|
小程序
内网环境中ruoyi若依实现微信小程序授权登录解决办法
内网环境中ruoyi若依实现微信小程序授权登录解决办法
1143 0
|
人工智能 自然语言处理
使用企业微信或公众号自动回复图片消息
AppFlow支持企业微信和公众号接收图片消息,并提供两种回复方式。方式一:直接回复图片消息,用户发送图片后立即收到回复,但无法继续追问。方式二:先保存图片,待用户发送文字后再一并处理并回复。配置步骤包括选择模板、配置鉴权信息、设置执行动作参数及发布连接流。详细操作可参考相关文档。
1321 1
使用企业微信或公众号自动回复图片消息
|
小程序 开发者
【微信小程序-原生开发】实用教程05-首页(含自定义调试模式、插入图片、图文排版、底部留白、添加本地图片)
【微信小程序-原生开发】实用教程05-首页(含自定义调试模式、插入图片、图文排版、底部留白、添加本地图片)
387 0
|
小程序 JavaScript API
微信小程序开发之:保存图片到手机,使用uni-app 开发小程序;还有微信原生保存图片到手机
这篇文章介绍了如何在uni-app和微信小程序中实现将图片保存到用户手机相册的功能。
3603 0
微信小程序开发之:保存图片到手机,使用uni-app 开发小程序;还有微信原生保存图片到手机
|
算法 小程序 Java
java制作海报三:获取微信二维码详情,并改变大小,合成到海报(另一张图片)上
这篇文章介绍了如何使用Java获取微信小程序的二维码,并将其调整大小后合成到海报(另一张图片)上。
277 0
|
机器学习/深度学习 自然语言处理 计算机视觉
CVPR 2024:生成不了光线极强的图片?微信视觉团队有效解决扩散模型奇点问题
【4月更文挑战第14天】中山大学和微信团队的研究者提出 SingDiffusion,一种解决扩散模型在处理极端亮度图像时的平均亮度问题的新方法。SingDiffusion 可无缝集成到预训练模型中,无需额外训练,通过处理 t=1 时间步长的采样问题,改善了图像生成的亮度偏差。在 COCO 数据集上的实验显示,相较于现有模型,SingDiffusion 在 FID 和 CLIP 分数上表现更优。
243 7
CVPR 2024:生成不了光线极强的图片?微信视觉团队有效解决扩散模型奇点问题
|
小程序 前端开发
【非常全】微信小程序下载图片到相册,微信小程序自动获取分享图片到相册
【非常全】微信小程序下载图片到相册,微信小程序自动获取分享图片到相册
1352 3

热门文章

最新文章