IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 小程序获取微信用户头像https链接到.net后台保存读取base64 -> 正文阅读

[网络协议]小程序获取微信用户头像https链接到.net后台保存读取base64

小程序前端

    // 授权获取用户头像保存到后台数据库
    uploadImage: function () {
        var that = this;
        var headImg = that.wxUser.userInfo.avatarUrl;
        // 根据链接获取图片信息转成临时文件
        wx.getImageInfo({
            src: headImg,
            success: function (sres) {
                // 上传图片
                wx.uploadFile({
                    // 此处填写你的接口
                    url: that.config.appConfig.apiRoot + that.api.uploadImage,
                    filePath: sres.path,
                    name: "file",
                    success: function (res) {
                        console.log("成功")
                        console.log(res)
                        var jsonObj = JSON.parse(res.data);
                        console.log(jsonObj)
                    },
                    fail: function (rev) {
                        console.log(rev);
                    }
                });
            },
            fail: function (srev) {
                console.log("ERROR");
                console.log(srev);
            }
        });
    },

.net后台获取链接图片

        [HttpPost]
        public ActionResult UploadImage()
        {
            try
            {
                var base64Url = "";
                var requestFiles = Request.Files;
                if (requestFiles.Count > 0)
                {
                    Stream stream = requestFiles[0].InputStream;
                    byte[] bytes = new byte[stream.Length];
                    stream.Read(bytes, 0, bytes.Length);
                    // 设置当前流的位置为流的开始
                    stream.Seek(0, SeekOrigin.Begin);
                    base64Url = Convert.ToBase64String(bytes);//byte[]转base64
                }
                return Json(new CommonResult { Result = true, Data = base64Url });
            }
            catch (Exception e)
            {
                throw e;
            }
        }

注意:后台的Request为

如果是Microsoft.AspNetCore.Http

则这样使用:


        [HttpPost]
        public CommonResult UploadImage()
        {
            try
            {
                string base64Url = "";
                var requestFiles = HttpContext.Request.Form.Files;
                if (requestFiles.Count > 0)
                {
                    // 以下注释代码没有实践 应该是这样 可以百度下
                    /*
                    Stream stream = requestFiles[0].OpenReadStream();
                    byte[] bytes = new byte[stream.Length];
                    stream.Read(bytes, 0, bytes.Length);
                    // 设置当前流的位置为流的开始
                    stream.Seek(0, SeekOrigin.Begin);
                    base64Url = Convert.ToBase64String(bytes);//byte[]转base64
                    */
                }
                return new CommonResult() {
                    Result = true,
                    Data = base64Url
                };
            }
            catch (Exception e)
            {

                throw e;
            }
            
        }

?小程序显示图片可以:

<image src="data:image/png;base64,{{base64Url}}"></image>

?需要注意下?base64Url 有没有换行符,如果有的话在js里面正则去掉

base64Url = base64Url.replace(/[\r\n]/g, "")

另外补充一点:

得到base64的字符串格式后,可以直接在浏览器打开,前缀加上?data:image/png;base64,

?后面直接拼接base64字符串

以上完结。

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-11-25 08:28:41  更:2021-11-25 08:31:07 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 7:37:05-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码