微信小程序获取图片使用session(上篇)

news/2025/1/8 17:13:52/

概述:

我们开发小程序>微信小程序,从后台获取图片现实的时候,通常采用http get的方式,例如以下代码

<image class="user_logo" src="{{logoUrl}}"></image>

变量logoUrl为ur图片l的请求地址
但是对于很多情况,不希望图片被公开访问,需要登录才能获取到的图片,这种方式就不行了。
需要在请求中添加相关的cookie信息才行

请求:

通常的做法是,自定义http head,如下所示:

util_http_get_imagedata_show(inurl, callImageDataFun, cl) {var headerObj = {'Cookie': getApp().globalData.coockieStr};wx.request({url: inurl,method: 'get',responseType: 'arraybuffer',header: headerObj,success: function (res) {callImageDataFun(res.data, cl);}});
}callSetItemsShowData(imagedata, cl) {var picData = "data:image/png;base64," + wx.arrayBufferToBase64(imagedata);cl.setData({logoUrl : picData});
},

getApp().globalData.coockieStr 是登录的时候通过其他方式获取的session关联的cookie,保存在全局变量。

测试调用:

this.util_http_get_imagedata_show(tmpStr, this.callSetItemsShowData, this);

优缺点分析:

优点:把当前session关联的cookie代入,通过正确登录,能够很好地在当前session下获取图片,控制图片不被非法获取。

缺点:需要额外的手动写http请求过程,增加代码量。特别注意的是,对于图片比较大的(超过1M)导致小程序setData渲染效率低。如下图小程序开发工具上报警告:
在这里插入图片描述

为了解决这个性能问题,本人苦思冥想,我的下一篇文章:小程序>微信小程序获取图片使用session(下篇),地址:https://blog.csdn.net/shenweihong/article/details/144972026


http://www.ppmy.cn/news/1561597.html

相关文章

Solaris操作系统

Solaris操作系统是Sun Microsystems&#xff08;现为Oracle公司的一部分&#xff09;开发的一种UNIX操作系统。它以其高可靠性、强大的网络功能和出色的性能而闻名。以下是对Solaris操作系统的详细介绍&#xff1a; 历史背景 Solaris的起源可以追溯到SunOS&#xff0c;这是Su…

ECharts系列:echart中折线图折线设置不平滑显示

问题来了&#xff0c;最近在工作中遇到个问题&#xff0c;echart中折线图折线设置不平滑显示。 ECharts 中&#xff0c;你可以通过配置项来控制折线图的线条是否平滑显示。 默认情况下&#xff0c;折线是不平滑的&#xff08;即直线&#xff09;。如果你想要设置折线为不平滑…

2025年PMP考试最新报名通知

经PMI和中国国际人才交流基金会研究决定&#xff0c;中国大陆地区2025年第一期PMI认证考试定于3月15日举办。在基金会网站报名参加本次PMI认证考试的考生须认真阅读下文&#xff0c;知悉考试安排及注意事项&#xff0c;并遵守考试有关规定。 一、时间安排 &#xff08;一&#…

ubuntu18升级至ubuntu20

背景 机房有套老k8s集群&#xff0c;上面的比较重要的服务迁移走了。使用的是ubuntu18的系统&#xff0c;升级至ubuntu20再到ubuntu22&#xff0c;然后升级上面的k8s集群&#xff0c;方便后期维护 思路 注意的点&#xff1a;升级node节点的系统时&#xff0c;注意先将node上…

【项目】多模态图文理解-GLM-Edge实战

【项目】多模态图文理解-GLM-Edge实战 &#xff08;一&#xff09;模型初体验&#xff08;二&#xff09;模型介绍&#xff08;三&#xff09;性能指标&#xff08;1&#xff09;高通&#xff08;2&#xff09;Intel &#xff08;四&#xff09;安装依赖&#xff08;五&#xf…

混合专家模型 (MoE)笔记摘要

ref&#xff1a; https://huggingface.co/blog/zh/moe#%E4%BB%80%E4%B9%88%E6%98%AF%E6%B7%B7%E5%90%88%E4%B8%93%E5%AE%B6%E6%A8%A1%E5%9E%8B 简短总结 混合专家模型 (MoEs): 与稠密模型相比&#xff0c; 预训练速度更快 与具有相同参数数量的模型相比&#xff0c;具有更快的…

Spring Boot + Jasypt 实现application.yml 属性加密的快速示例

Jasypt(Java Simplified Encryption)是一个专为Java应用程序设计的开源加密库,旨在简化加密和解密流程,保护敏感数据如密码、API密钥等。 jasypt-spring-boot-starter允许开发者在Spring Boot应用中轻松地实现加密和解密功能。 本篇介绍使用 jasypt-spring-boot-starter 以…

用JAVA 源码角度看 客户端请求服务器流程中地址是域名情况下解析域名流程

1. 域名解析的入口点 getaddrinfo 或 getAllByName 方法&#xff1a;在底层&#xff0c;Java 使用 getaddrinfo&#xff08;在 Unix-like 系统中&#xff09;或类似的系统调用来解析域名。在 Java 的 InetAddress 类中&#xff0c;getAllByName 方法是解析域名的入口点之一。它…