前端处理接口直接返回的图片

有时候接口会直接返回图片而不是连接,前端需要处理后才能使用。
首先你可能需要设置responseType: 'blob’处理响应数据格式。

直接使用

将接口及参数动态拼接成img.src直接使用

  <img  src="http://test.com/api/img?size=50x50" alt="">

img的src属性是可以发请求的,所以可以直接将接口作为src使用。
缺点:
接口返回的图片往往是流传输的,所以可能会出现图片加载失败的问题。

fetch处理图片流

通过fetch发请求。
当接口响应图片通过块传输,响应数据格式是ReadableStream时,也可以通过流处理数据转为blob使用。
在这里插入图片描述
响应数据:
在这里插入图片描述

    fetch('http://test.com/api/geImg?msg=123',{headers: {responseType: 'blob'}}).then(response => {console.log('response', response);return Promise.resolve(response.body)}).then(async (data) => {const chunks = [];const reader = data.getReader();let result = await reader.read();while (!result.done) {chunks.push(result.value);result = await reader.read();}let blob = new Blob(chunks, { type: 'image/jpg' })let url = window.URL.createObjectURL(blob);		// 获取对象urldocument.querySelector('.created-img').src = url;})

缺点:
使用fetch比较少,
使用axios发请求时,请求结果转化失败,可能有需要一些配置项需要处理。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/726597.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringBoot和Vue 实现增删改查、分页查询、模糊查询

文章目录 前言统一的设置返回类型Vue安装axios&#xff0c;封装request查询所有的用户前端页面请求后端接口编写 条件查询前台请求后台处理请求 分页查询前台发送请求后台接受请求 新增、编辑管理员信息前台后台 删除操作前台请求后台 前言 SpringBoot实现增删改查、分页查询、…

出口内销双循环,诺赛特企业走出发展新路子

在外贸圈这个深水池中&#xff0c;企业的命脉早已与规模、市场地位等因素牢牢绑定。大型外贸企业掌握大资源、大曝光&#xff0c;不用为订单发愁&#xff1b;中型外贸企业&#xff0c;投入相当大的人力、财力、物力&#xff0c;孤注一掷&#xff0c;虎口夺食&#xff1b;小型外…

LLM 大模型框架 LangChain 可观测性最佳实践

LLM&#xff08;Large Language Model&#xff09;大模型的可观测性是指对模型内部运行过程的理解和监控能力。由于LLM大模型通常具有庞大的参数量和复杂的网络结构&#xff0c;因此对其内部状态和运行过程的理解和监控是一个重要的问题。 什么是 LangChain&#xff1f; Lang…

中华财险启动“3·15”金融消费者权益保护教育宣传活动!

2024年中国银行保险业“3•15”消费者权益保护教育宣传活动拉开帷幕。中华财险始终坚持“中华保险•服务中华”&#xff0c;切实履行险企责任&#xff0c;为主动保护金融消费者合法权益&#xff0c;在国家监督管理总局和中华保险集团的指导下&#xff0c;全面开展“3•15” 金融…

吼!原来教师这样发布学生成绩,轻松没烦恼

在教育的日常工作中&#xff0c;发布学生成绩往往是一项繁琐而重要的任务。教师们需要确保每位学生及家长能准确、及时地了解到学习成果。然而&#xff0c;传统的纸质成绩单或逐个通知的方式不仅耗时耗力&#xff0c;还容易出错。那么&#xff0c;有没有一种方法能够让教师们轻…

前端请求的错误处理

全局考虑&#xff1a; 错误需要从三个方面考虑&#xff0c;范围一次减小&#xff1a; 网络层 > 协议层 > 应用层

全球IT外包的趋势与发展

随着全球化进程的不断深化&#xff0c;IT外包已经成为众多企业的关键战略之一。IT外包是将企业的信息技术需求委托给第三方服务提供商&#xff0c;以在成本、效率和核心业务专注方面取得优势。在全球化的大背景下&#xff0c;IT外包的发展呈现出一系列新的趋势。 首先&#xff…

【ChatGPT实践】Claude 3全面升级:多模态+100万Token上下文长度,碾压OpenAI?

最近几天这张图在ai圈很火。 前几天&#xff0c;Anthropic发布了其新一代大语言模型Claude 3系列,包括Claude 3 Opus、Sonnet和Haiku三种规模&#xff0c;分别代表了超大杯、大杯和中杯。其中Sonnet版本在官网可以免费体验&#xff1a;https://claude.ai 最强的Opus版本&#x…

Nodejs web服务器之GET、POST请求初次体验

一、认识http请求 步骤 1.DNS解析域名&#xff0c;找到ip地址&#xff0c;建立TCP连接&#xff0c;发起http请求 2.服务器接收到http请求&#xff0c;进行处理&#xff0c;返回数据 3.客户端接收到返回的数据&#xff0c;处理数据&#xff08;比如渲染页面&#xff09; 二、no…

element多选框select下拉框数据回显的问题value.push is not a function

文章目录 问题描述 问题描述 今天在使用Element UI el-select组件遇到了一个问题&#xff0c;如下图&#xff1a; 下拉框里的值选中了&#xff0c;但是文本框里没有值 这是 el-select组件代码,我这里是用了一个多选框&#xff0c;options的值是在后端查询的&#xff0c;form.we…

Batch Nomalization 迁移学习

Batch Nomalization 1.Batch Nomalization原理 图像预处理过程中通常会对图像进行标准化处理&#xff0c;这样能够加速网络的收敛。就是按照channel去求均值和方差&#xff0c;然后原数据减均值除标准差&#xff0c;使我们的feature map满足均值为0&#xff0c;方差为1的分布…

three.js如何实现简易3D机房?(三)显示信息弹框/标签

接上一篇&#xff1a; three.js如何实现简易3D机房&#xff1f;(二&#xff09;模型加载的过渡动画&#xff1a;http://t.csdnimg.cn/onbWY 目录 七、创建信息展示弹框 1.整体思路 &#xff08;1&#xff09;需求&#xff1a; &#xff08;2&#xff09;思路&#xff1a;…

网康科技 NS-ASG 应用安全网关 SQL注入漏洞复现(CVE-2024-2022)

0x01 产品简介 网康科技的NS-ASG应用安全网关是一款软硬件一体化的产品,集成了SSL和IPSec,旨在保障业务访问的安全性,适配所有移动终端,提供多种链路均衡和选择技术,支持多种认证方式灵活组合,以及内置短信认证、LDAP令牌、USB KEY等多达13种认证方式。 0x02 漏洞概述 …

C语言第三十六弹---文件操作(中)

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】 文件操作 1、文件的顺序读写 1.1、顺序读写函数介绍 1.1.1、fgetc 与 fputc 1.1.2、fgets 与 fputs 1.1.3、fscanf 与 fprintf 1.1.4、fread 与 fwrite 1.…

全志D1s开发板裸机开发之坏境搭建

环境搭建 开发板介绍 张天飞老师编写的《RISC-V体系结构编程与实践》&#xff0c;里面的源码是基于 QEMU 模拟器的&#xff0c;可以认为它是一款虚拟的开发板。如果需要在真实开发板上学习&#xff0c;可以使用百问网的 DongshanPI-D1S 开发板。 DongshanPI-D1S 是百问网推出…

Python web自动化测试 —— 文件上传!

​文件上传三种方式&#xff1a; &#xff08;一&#xff09;查看元素标签&#xff0c;如果是input&#xff0c;则可以参照文本框输入的形式进行文件上传 方法&#xff1a;和用户输入是一样的&#xff0c;使用send_keys 步骤&#xff1a;1、找到定位元素&#xff0c;2&#…

Git分支操作

Git分支操作 理解分支查看当前分支git branch 查看有几个分支git branch 新分支的名字 创建新分支git checkout -b 分支名 直接创建并切换到该分支下 切换分支git checkout 分支名 切换到指定分支 合并分支git merge 分支名 合并指定名字的分支 删除分支git branch -d 分支 删…

Linux:kubernetes(k8s)探针的简介(7)

相当于我们用于监控容器的一个东西&#xff0c;通过给我们的不同探针来判断容器内的状态情况&#xff0c;实现故障的一个自动恢复。 我们在上一章的yaml文件中写入了一个这个东西 那么他什么情况下重启&#xff0c;就是通过探针进行一个监控&#xff0c;加入监控某一个端口&…

云原生(一)、linux快速上手

Linux是一种开源的Unix-like操作系统内核。它是由Linus Torvalds于1991年首次发布&#xff0c;其后经过全球的自由软件社区的持续开发和改进。Linux内核是操作系统的核心部分&#xff0c;但通常与GNU项目合作&#xff0c;以形成完整的操作系统&#xff0c;被称为Linux发行版&am…

ROS从入门到精通4-2:Docker安装ROS、可视化仿真与终端复用

目录 0 专栏介绍1 Docker安装ROS2 Docker可视化仿真2.1 显示配置2.2 启动容器 3 终端复用工具3.1 session操作3.2 window操作3.3 pane操作3.4 其他操作 0 专栏介绍 本专栏旨在通过对ROS的系统学习&#xff0c;掌握ROS底层基本分布式原理&#xff0c;并具有机器人建模和应用ROS…