.NET指定图片地址下载并转换Base64字符串
需求描述
需要调用第三方图片上传接口上传图片,对方图片格式只能接收Base64字符串。所以我们需要将系统服务器的图片通过Url下载下来,然后转换成Base64字符串。接下来我们将使用HttpClient类库下载图片并将其转换为Base64格式的字符串。
代码示例
/// <summary>
/// 获取图片的Base64字符串
/// </summary>
/// <param name="imageUrl">imageUrl</param>
/// <returns></returns>
public static async Task<string> GetImageBase64StringAsync(string imageUrl)
{
// 创建 HttpClient 实例
using (var httpClient = new HttpClient())
{
// 下载图片
var response = await httpClient.GetAsync(imageUrl);
var contentStream = await response.Content.ReadAsStreamAsync(); // 将图片转换为 Base64 格式的字符串
using (var memoryStream = new MemoryStream())
{
await contentStream.CopyToAsync(memoryStream);
string base64String = Convert.ToBase64String(memoryStream.ToArray());
return base64String;
}
}
}
转换图片
原图地址:https://rs1.huanqiucdn.cn/dp/api/files/imageDir/ce59747892d2b84f8c9b7f9d2561c765.png
方法调用
var getImageBase64String = GetImageBase64StringAsync("https://rs1.huanqiucdn.cn/dp/api/files/imageDir/ce59747892d2b84f8c9b7f9d2561c765.png").ConfigureAwait(false).GetAwaiter().GetResult();
验证转换的Base64字符串是否能成功转成原图片
在线Base64转图片:https://www.lddgo.net/convert/base64-to-image
.NET指定图片地址下载并转换Base64字符串的更多相关文章
- Java学习笔记——IO操作之以图片地址下载图片
以图片地址下载图片 读取给定图片文件的内容,用FileInputStream public static byte[] mReaderPicture(String filePath) { byte[] ...
- 爪哇国新游记之二十八----从url指定的地址下载文件到本地
package download; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; ...
- JavaScript把项目本地的图片或者图片的绝对路径转为base64字符串、blob对象在上传
主题: JavaScript把项目本地的图片或者图片的绝对路径转为base64字符串.blob对象在上传. 用处: 从本地选择图片上传,如项目规定只能选择本项目文件夹下的图像上传为头像等. 主要思想: ...
- element上传图片组件使用方法|图片回显|格式转换base64
upload上传组件的使用方法 上传图片后自动上传(也可以手动上传),图片上传成功后由后端返回特定图片地址,在表单提交后将表单数据同图片地址一并返回即可完成图片上传功能. 组件HTML <!-- ...
- C#之通过图片地址下载图片
因为项目上需要加载在线卫星云图,因此写了这个功能来把卫星云图下载的本地,在这里记录一下: string imageUrl=“http://image.nmc.cn/product/2018/08/06 ...
- 使用canvas给图片添加水印, canvas转换base64,,canvas,图片,base64等转换成二进制文档流的方法,并将合成的图片上传到服务器,
一,前端合成带水印的图片 一般来说,生成带水印的图片由后端生成,但不乏有时候需要前端来处理.当然,前端处理图片一般不建议,一方面js的处理图片的方法不全,二是有些老版本的浏览器对canvas的支持度不 ...
- php把采集内容中图片地址下载并替换成本地地址
把字符串中地址全部获取到一个数组我们利用preg_match_all函数 代码如下 复制代码 <?php$str='<p><img border="0" s ...
- base64字符串转文件,以及ngImgCrop裁剪图片并上传保存到服务器示例
base64字符串是包含文件格式的文件字符串,例如:data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAgAElE ...
- 上传文件不落地转Base64字符串
1. 问题描述 因需调用第三方公司的图像识别接口,入参是:证件类型.图像类型.图片base64字符串,采用http+json格式调用. 本来采用的方式是:前端对图片做base64处理,后端组装下直接调 ...
- js,JQ 图片转换base64 base64转换为file对象,blob对象
//将图片转换为Base64 function getImgToBase64(url,callback){ var canvas = document.createElement('canvas'), ...
随机推荐
- Synchronized和Volatile的对比
Synchronized和Volatile是并发中的两大关键字,有相似性和不同点. Synchronized更详细介绍参考https://www.cnblogs.com/spark-cc/p/1706 ...
- JVM加载中初始化时机?什么时候不会进行初始化?
初始化的过程是给静态变量赋予指定值以及执行静态代码块的过程. 当遇到new,getstatic,putstatic,invokestatic指令时要进行初始化,也就是new实例化对象,调用静态变量以及 ...
- android使用---->常用组件1
在TextView中创建空心文字 <TextView android:layout_width="wrap_content" android:layout_height=&q ...
- 微信-JSSDK网页调用-(微信扫一扫)
网页调用微信扫一扫接口 1.准备工作: 1.1微信浏览器 1.2微信APPID,nonceStr 2.使用方式快速预览 调用扫一扫微信接口. 1需要获取access_token 2获取 $jsapi ...
- jquery二级菜单。显示了jquery的方便
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- kubectl管理多个集群配置
需求描述:在一台机器上通过kubectl管理多个Kubernetes集群. 操作过程:将各集群的kubectl config文件中的证书内容转换,通过命令创建config文件:通过上下文切换使用不同集 ...
- python之opencv库
关于OpenCV简介 OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux.Windows.Android和Mac OS操作系统上.它轻量级而且高效--由一系列 C ...
- 【书籍阅读】【Spring实战】二 装配Bean
Spring配置的可选方案 ①自动化装配Bean:@Component ②Java代码装配Bean:@Bean ③XML装配Bean 自动化装配Bean Spring从两个角度实现对 @Compone ...
- Java学习笔记14
1.Arrays类 Arrays类包含用于操作数组的各种方法(如排序和搜索).该类没有构造函数,直接使用类名.方法名()的方法调用需要的方法. 常用方法 方法 作用 public static S ...
- ROS机器人雷达跟随
ROS机器人雷达跟随 初始化 打开一个终端输入: ssh clbrobot@ip # 连接小车 roslaunch clbrobot bringup.launch # 激活主板 开启摄像头 开新终端输 ...