根据图片URL转换成base64格式显示(图片跨域携带cookie)

本文介绍了如何解决在微信中通过后端API获取的图片无法长按保存或分享的问题。关键在于将图片转换为base64编码,并在JavaScript(特别是ReactJS)中设置到src属性,确保跨域时携带cookie。
摘要由CSDN通过智能技术生成
函数代码如下:
getShareImg = () => {
   // var img = "https://example.api.com/shareImg.png";
    var img = "https://example.api.com/shareImg.jpeg";
    function getBase64Image(img) {
        var canvas = document.createElement("canvas");
        canvas.width = img.width;
        canvas.height = img.height;

        var ctx = canvas.getContext("2d");
        ctx.drawImage(img, 0, 0, img.width, img.height);
        var ext = img.src.substring(img.src.lastIndexOf(".")+1).toLowerCase();
        var dataURL = canvas.toDataURL("image/"+ext);
        return dataURL;
    }
    var image = new Image();
    image.crossOrigin = 'use-credentials';
    image.src = img;
    image.onload = () => {
        var base64 = getBase64Image(image);
        console.log(base64);
        this.setState({
            shareImgBase64: base64
        })
  
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值