收藏
回答

阿里云加了防盗链,小程序白名单如何填写

我的阿里云服务器,做了图片连接的防盗链,需要添加域名白名单图片才可显示出来


我小程序没加白名单的时候图片显示不出


在白名单加了这个之后https://servicewechat.com


在微信开发者工具可以显示,但是测试版和体验版还是没效果,请问下正式版 体验版该如何填写正确白名单

回答关注问题邀请回答
收藏

4 个回答

  • 平凡世界
    平凡世界
    2019-02-26

    我们的使用场景是这样的,DNS解析至阿里云的CND,CDN的回源指向阿里云的OSS;

    需要如下操作:

    1、在CDN上防盗链白名单设置 servicewechat.com;

    2、在OSS上防盗链白名单设置 https://servicewechat.com

    只有1、2两个配置都对了才能用。


    2019-02-26
    有用 1
    回复
  • Blue🌂
    Blue🌂
    04-23

    我加了 https://servicewechat.com/* 开发者工具以及真机都可以访问了。

    然而电脑版微信的小程序不能显示图片,我查了阿里云OSS的日志记录,又加上 http://servicewechat.com/* 即可。

    04-23
    有用
    回复 3
    • 肯德基
      肯德基
      04-23
      在体验版上依旧是有问题,用小程序页面调用吧
      04-23
      回复
    • Blue🌂
      Blue🌂
      04-23回复肯德基
      不清楚你怎么设置的,我的开发版以及体验版,在安卓真机,开发者工具,电脑版微信小程序,都正常了。正式版暂时小程序还没发布,但我想应该没什么问题。
      04-23
      回复
    • Blue🌂
      Blue🌂
      04-23
      你查一下oss日志看下请求referer是什么
      04-23
      回复
  • 肯德基
    肯德基
    2018-09-12

    如果仅仅2 3张图片需要并且是防盗链影响的话,我这做了一个解决方案,那就是用微信请求来读取防盗链的源文件图片,读取为二进制文件,然后再转base64位后输出给src就可以解决了


    代码如下:


    let $this = this;

    wx.request({

    url: url

    method: 'GET',


    responseType: 'arraybuffer',

    success: function(res) {

    console.log(res)

    let base64 = wx.arrayBufferToBase64(res.data);


    var img = 'data:image/jpg;base64,' + base64;


    }

    });


    2018-09-12
    有用
    回复 1
    • 肯德基
      肯德基
      04-23
      本人已经解决了,添加白名单到阿里云的OSS是不现实的。
      我的解决方案是,在HTML页面把需要作为防盗链的内容显示出来
      然后再用微信小程序直接调用页面去解决
      04-23
      回复
  • D1N910
    D1N910
    2018-09-10

    参考这里

    https://developers.weixin.qq.com/community/develop/doc/0006e888ce8fa82f1437d8bc25bc00?highLine=%25E7%2599%25BD%25E5%2590%258D%25E5%258D%2595

    2018-09-10
    有用
    回复 2
    • 肯德基
      肯德基
      2018-09-10

      *.servicewechat.com  和  servicewechat.com

      添加了这两个也没有效果。我的是阿里云的= =

      2018-09-10
      回复
    • 潋滟
      潋滟
      2019-02-26回复肯德基

      请问这个问题你最后怎么解决的

      2019-02-26
      回复
登录 后发表内容