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

[交互]前端展示服务端获取的图片

可以通过以下步骤从服务端获取图片:

  1. 引入axios库:在前端代码中使用axios库来发送HTTP请求。可以通过以下方式引入axios:

    import axios from 'axios';
    
  2. 发送请求:使用axios发送HTTP请求,获取图片文件的二进制数据。发送请求的代码示例:

    axios({method: 'GET',url: 'http://your-domain.com/path/to/image.jpg',responseType: 'arraybuffer'
    }).then(response => {// 将响应的二进制数据转换为Blob对象const blob = new Blob([response.data], { type: response.headers['content-type'] });// 根据Blob对象生成图片URLconst imgUrl = URL.createObjectURL(blob);// 将图片URL赋值给图片元素的src属性const imgElement = document.querySelector('#my-img');imgElement.src = imgUrl;
    });
    

    在上面的代码中,responseType设置为arraybuffer,表示响应的数据以二进制数组的形式返回。在响应成功的回调函数中,将响应的二进制数据转换为Blob对象,并根据Blob对象生成图片URL,最后将图片URL赋值给图片元素的src属性,即可显示图片。


  axios({method: 'GET',url: 'http://your-domain.com/path/to/getImage',responseType: 'blob'}).then(response => {// 将响应的二进制数据转换为Blob对象const blob = new Blob([response.data], { type: response.headers['content-type'] });// 根据Blob对象生成图片URL 将图片URL赋值给图片元素的src属性const reader = new FileReader();reader.readAsDataURL(blob);reader.onload = function (e) {imgUrl = e.target.result;// e.target.result 即为base64结果};reader.onerror = (error) => {console.log("图形加载错误");};});

在上面的代码中,responseType设置为blob,表示响应的数据以blob对象的形式返回。在响应成功的回调函数中,将响应的二进制数据转换为Blob对象,并根据Blob对象生成图片URL,最后将图片URL赋值给图片元素的src属性,即可显示图片。

以上虽然设置了blob但是根本上还是图片以二进制的形式传输的,因为所有非json格式,均可以以blob接收在转换成对应格式的图片或文件

http://www.lryc.cn/news/168063.html

相关文章:

  • LeetCode2.两数相加
  • Linux编译过程与交叉编译
  • MediaPipe+OpenCV 实现实时手势识别(附Python源码)
  • 为什么选择C/C++内存检测工具AddressSanitizer?如何使用AddressSanitizer?
  • 获取vue当前页面url问号后面的参数
  • Linux编程之线程池的设计与实现
  • stm32---定时器输入捕获
  • 打造生产级Llama大模型服务
  • Acwing 828. 模拟栈
  • 初识Docker
  • HTTPS Tomcat Servlet 博客系统 软件测试的概念 Linux
  • ​云南财经大学《乡村振兴战略下传统村落文化旅游设计》许少辉八一著作
  • shopee——排序模型AUC还能涨吗?
  • 长城网络靶场第三题
  • Java“牵手”虾皮商品列表页数据采集+虾皮商品价格数据排序,虾皮API接口申请指南
  • Pyspark综合案例(pyspark安装和java运行环境配置)
  • 虚拟机突然无法访问外部网络的现象集合
  • 国庆中秋特辑(一)浪漫祝福方式 用循环神经网络(RNN)或长短时记忆网络(LSTM)生成祝福诗词
  • 【入门篇】ClickHouse 的安装与配置
  • 为了工作刷题
  • linux jenkins2.414.1-1.1版本安装
  • 嵌入式学习笔记(33)S5PV210的第二阶段处理过程
  • 学校项目培训之Carla仿真平台之安装Carla
  • 什么是MQ消息队列及四大主流MQ的优缺点(个人网站复习搬运)
  • Learn Prompt-什么是ChatGPT?
  • 高德地图实现-微信小程序地图导航
  • 你已经应用了哪种服务注册和发现的模式呢?
  • Python爬虫技术在SEO优化中的关键应用和最佳实践
  • 基于支持向量机的试剂条图像识别,基于SVM的图像识别,SVM的详细原理,Libsvm工具箱使用注意事项
  • PbootCMS在搭建网站