当前位置: 首页 > news >正文

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

概述:

我们开发微信小程序,从后台获取图片现实的时候,通常采用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

相关文章:

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

概述&#xff1a; 我们开发微信小程序&#xff0c;从后台获取图片现实的时候&#xff0c;通常采用http get的方式&#xff0c;例如以下代码 <image class"user_logo" src"{{logoUrl}}"></image>变量logoUrl为ur图片l的请求地址 但是对于很多…...

代码随想录算法训练营第七十天 | 拓扑排序精讲,Dijkstra(朴素版)精讲,Dijkstra(堆优化版)精讲

拓扑排序精讲 题目讲解&#xff1a;代码随想录 重点&#xff1a; 1. 思路&#xff1a; 1. Dijkstra&#xff08;朴素版&#xff09;精讲 题目讲解&#xff1a;代码随想录 重点&#xff1a; 1. 思路&#xff1a; 1. Dijkstra&#xff08;堆优化版&#xff09;精讲 题目讲解&…...

【保姆级爬虫】微博关键词搜索并获取博文和评论内容(python+selenium+chorme)

微博爬虫记录 写这个主要是为了防止自己忘记以及之后的组内工作交接&#xff0c;至于代码美不美观&#xff0c;写的好不好&#xff0c;统统不考虑&#xff0c;我只能说&#xff0c;能跑就不错了&#xff0c;上学压根没学过python好吧&#xff0c;基本上是crtlc&ctrlv丝滑小…...

Excel 打印时-预览界面内容显示不全

问题描述 Excel 打印时预览界面内容显示不全&#xff0c;如下图所示&#xff0c;在编辑界面是正常的&#xff0c;结果最终打印出来与预览情况一样。 编辑界面 预览界面 解决办法 此时我的字体是宋体&#xff0c;将字体改为等线&#xff0c;问题得到解决。 打印预览界面...

nginx-限流(请求/并发量)

一. 简述&#xff1a; 在做日常的web运维工作中&#xff0c;难免会遇到服务器流量异常&#xff0c;负载过大等情况。恶意攻击访问/爬虫等非正常性请求&#xff0c;会带来带宽的浪费&#xff0c;服务器压力增大&#xff0c;影响业务质量。 二. 限流方案&#xff1a; 对于这种情…...

Vue——使用html2pdf插件,下载pdf文档到本地

1.安装 html2pdf官网地址 npm install html2pdf.js pnpm add html2pdf.js2.引入 import html2pdf from html2pdf.js3.我的项目是使用的原生avascript&#xff0c;table tr td画表格然后通过html2pdf插件下载pdf。 问题&#xff1a;下载pdf时内容被截断&#xff0c;如下图所示…...

每日一题:BM1 反转链表

文章目录 [toc]问题描述数据范围示例 C代码实现使用栈实现&#xff08;不符合要求&#xff0c;仅作为思路&#xff09; 解题思路 - 原地反转链表步骤 C语言代码实现 以前只用过C刷过代码题目&#xff0c;现在试着用C语言刷下 问题描述 给定一个单链表的头结点 pHead&#xff…...

CSS 实现字体颜色渐变

在 CSS 中&#xff0c;可以通过 background-clip 和 text-fill-color 等属性来实现字体颜色渐变。以下是实现字体颜色渐变的基本步骤和示例代码&#xff1a; 示例代码 <!DOCTYPE html><html lang"en"><head><meta charset"UTF-8" /&…...

【软考网工笔记】计算机基础理论与安全——网络安全

病毒 Melissa 宏病毒 1. 是一种快速传播的能够感染那些使用MS Word 97 和MS Office 2000 的计算机宏病毒。 2. 前面有**Macro** 表示这是宏病毒&#xff1b; 3. 宏病毒可以感染后缀为.xls的文件&#xff1b;Worm 蠕虫病毒 1. 通常是通过网络或者系统漏洞进行传播。 2. 利用信…...

JS数组转字符串(3种方法)

JavaScript 允许数组与字符串之间相互转换。其中 Array 方法对象定义了 3 个方法&#xff0c;可以把数组转换为字符串&#xff0c;如表所示。 Array 对象的数组与字符串相互转换方法 数组方法 说明 toString() 将数组转换成一个字符串 toLocalString() 把数组转换成本地约定的…...

云计算安全需求分析与安全防护工程

23.1 概念与威胁分析 1&#xff09;概念 在传统计算环境下&#xff0c;用户构建一个新的应用系统&#xff0c;需要做大量繁杂的工作&#xff0c;如采购硬件设备、安装软件包、编写软件&#xff0c;同时计算资源与业务发展难以灵活匹配&#xff0c;信息系统项目建设周期长。随…...

C/C++的printf会调用malloc()

排查内存问题&#xff08;或相关的疑难杂症&#xff09;时&#xff0c;可能一句printf就能让bug出现&#xff0c;或者赶走bug。你可能觉得很神奇&#xff0c;但这并不神奇。 至少我们可以在 Linux-x64 下&#xff0c;通过 malloc hook&#xff0c;来验证当前的编译环境下&…...

spring mvc源码学习笔记之五

pom.xml 内容如下 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/P…...

3272 小蓝的漆房

将devc设置支持编译就能用新的遍历方式 for(auto &x : s)//遍历容器s&#xff0c;变量为x /* 多循环的嵌套&#xff1a; 计数是否需要重置为0; 是否因为ans定义成全局变量导致ans在比较多时候会出现错误*/ /* 1.对于一个标准色&#xff0c;对目标数组遍历&#xff0c; 如…...

MySQL使用触发器进行备份

触发器脚本备份 实现方案&#xff1a; 1.配置mysql调用外部脚本的插件mysqludf 链接&#xff1a;https://pan.baidu.com/s/1MCrf1u_SRWwcZoxM9JDNiw 提取码&#xff1a;kgt0 解压 2.解压后放进&#xff1a; mysql安装路径/lib/plugin/ 3.在mysql执行命令创建自定义函数&…...

数据结构与算法-顺序表

数据结构 顺序表 基本概念 顺序表&#xff1a;顺序存储的线性表链式表&#xff1a;链式存储的线性表&#xff0c;简称链表 顺序存储就是将数据存储到一片连续的内存中&#xff0c;在C语言环境下&#xff0c;可以是具名的栈数组&#xff0c;也可以是匿名的堆数组。 存储方式…...

OpenAI CEO 奥特曼发长文《反思》

OpenAI CEO 奥特曼发长文《反思》 --- 引言&#xff1a;从 ChatGPT 到 AGI 的探索 ChatGPT 诞生仅一个多月&#xff0c;如今我们已经过渡到可以进行复杂推理的下一代模型。新年让人们陷入反思&#xff0c;我想分享一些个人想法&#xff0c;谈谈它迄今为止的发展&#xff0c;…...

Shell编程详解

文章目录 一、Linux系统结构二、Shell介绍1、Shell简介2、Shell种类3、Shell查询和切换 三、Shell基础语法1、注释2、本地变量3、环境变量3.1、查看环境变量3.2、临时设置环境变量3.3、永久设置环境变量 4、特殊变量5、控制语句5.1、shell中的中括号5.2、if语句5.3、for循环5.4…...

跨站脚本攻击(XSS)详解

跨站脚本攻击&#xff08;XSS&#xff09;详解 跨站脚本攻击&#xff08;XSS&#xff0c;Cross-Site Scripting&#xff09;是一种通过在网页中注入恶意脚本&#xff0c;攻击用户浏览器的漏洞。攻击者可以利用XSS窃取用户敏感信息、劫持会话、或在受害者浏览器中执行恶意操作。…...

03-QT中的QMainWindow+对话框QDialog

文章目录 1.QMainWindow1.1菜单栏1.2 工具栏1.3 状态栏1.4 铆接部件1.5 核心部件&#xff08;中心部件&#xff09;1.6 资源文件 2.对话框2.1 基本概念2.2 标准对话框2.3 自定义消息框2.4 消息对话框2.5 标准文件对话框 1.QMainWindow QMainWindow是一个为用户提供主窗口程序的…...

手把手教你解决‘GLIBC_2.34‘ not found报错:从下载到编译的完整流程

深度解析GLIBC版本兼容性问题&#xff1a;从源码编译到环境隔离的全方位解决方案 当你兴致勃勃地准备运行某个新工具时&#xff0c;终端突然弹出"GLIBC_2.34 not found"的红色错误提示&#xff0c;这种挫败感想必很多Linux开发者都深有体会。GLIBC作为Linux系统的核心…...

赣州正规的高考班

赣州现代科技职业学校&#xff1a;高考班的那些事儿一、行业深度观察随着社会竞争的日益激烈&#xff0c;越来越多的学生和家长开始关注高考班。特别是在赣州这样的城市&#xff0c;优质的教育资源和专业的辅导机构备受追捧。然而&#xff0c;面对琳琅满目的选择&#xff0c;如…...

Three.js 的前端 WebGL 页面合集(日本 开源项目)

Three.js 的前端 WebGL 页面开发合集 「30 Three.js 的前端 WebGL 页面合集&#xff08;日本 开源项目&#xff09;」 /~46363Y8ZWf~:/ 链接&#xff1a;https://pan.quark.cn/s/1644aa234f1f 项目简介 本项目是一个使用 Three.js 进行前端 3D 图形开发的示例集合。每个子页面都…...

无线通信实战:如何用双线反射模型优化基站信号覆盖(附Python仿真代码)

无线通信实战&#xff1a;双线反射模型在基站信号覆盖优化中的应用与Python实现 站在城市高楼的天台上&#xff0c;通信工程师李明正用场强仪测试新建基站的信号覆盖情况。仪表显示某些区域存在明显的信号波动——这正是地面反射导致的典型问题。在5G网络部署和物联网设备激增的…...

Glyph视觉推理新手必看:如何用智谱开源模型轻松处理超长合同与论文

Glyph视觉推理新手必看&#xff1a;如何用智谱开源模型轻松处理超长合同与论文 1. 从痛点出发&#xff1a;为什么你需要Glyph&#xff1f; 想象一下&#xff0c;你手头有一份长达200页的合同&#xff0c;或者一篇包含复杂图表和公式的学术论文。你需要快速找到关键条款&#…...

[CI/CD] 排障实录:内网环境下 Jenkins + ArgoCD 流水线搭建

说明:本文基于个人学习测试环境编写,部分配置(如镜像仓库使用 HTTP、NodePort 暴露服务等)仅为简化演示,仅供参考,生产环境请遵循安全规范。 1. 基本信息 任务类型:部署 / 故障排查 涉及系统/服务: K3s 集群(v1.33.4+k3s1,1 Master + 2 Worker) Jenkins(Helm 部署…...

JavaScript 递归调用栈深度解析与层级遍历陷阱详解

本文深入剖析 javascript 中递归函数的执行栈行为&#xff0c;结合二叉树遍历实例&#xff0c;揭示因边界检查顺序不当导致的空指针异常、输出截断问题&#xff0c;并对比说明递归实现的“伪层级遍历”与真正 bfs 层序遍历的本质区别。 本文深入剖析 javascript 中递归函数…...

iStore增强插件:从网络优化到智能家居,一站式解决家庭网关痛点

1. iStore增强插件&#xff1a;家庭网络的瑞士军刀 第一次接触iStore增强插件是在三年前&#xff0c;当时我家的网络状况简直是一场灾难。孩子上网课卡顿、老婆追剧缓冲、我打游戏延迟飙升&#xff0c;三台设备同时在线就能让千兆宽带变成"千愁宽带"。直到在技术论坛…...

【数据结构与算法】第46篇:算法思想(一):递归与分治

一、递归的本质 1.1 什么是递归 递归就是函数调用自身。一个递归函数通常包含两部分&#xff1a; 终止条件&#xff1a;什么时候停止递归 递推公式&#xff1a;如何将大问题转化为小问题 c // 阶乘的递归实现 int factorial(int n) {if (n < 1) return 1; // 终…...

Jmeter分布式压测(超详细总结)

&#x1f345; 点击文末小卡片 &#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 一、什么是压力测试&#xff1f; 压力测试&#xff08;Stress Test&#xff09;&#xff0c;也称为强度测试、负载测试&#xff0c;属于性能测试的范畴。 压力…...