我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Golang如何实现图片上传功能

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Golang如何实现图片上传功能

今天小编给大家分享一下Golang如何实现图片上传功能的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

1.前端代码

html代码:

 <div class="col-5 f-l text text-r">背景图(必须):</div>  <div class="img-box">    <label>      <span class="copy-btn Hui-iconfont"></span>      <input type="file" class="up-file">    </label>  </div>  <div class="img-file col-offset-5">  </div>

2.JS代码

a.读取图片代码,用于在页面上显示

//读取图片function loadImg(){    //获取文件    var file = $(".up-file")[0].files[0];    //创建读取文件的对象    var reader = new FileReader();    //创建文件读取相关的变量    var imgFile;    //为文件读取成功设置事件    reader.onload=function(e) {        var e=window.event||e;        imgFile = e.target.result;        console.log(imgFile);        $(".img-file").css({'background':"url("+imgFile+")"});        isimg();    };     //正式读取文件    reader.readAsDataURL(file); }

b.验证是否有图片存在

//是否有图片验证function isimg(){    var img= $(".img-file").css('background-image');     if(img.indexOf("data:image")==-1&&img.indexOf(".jpg")==-1){        $(".mess").html("请添加背景图片").css("opacity",1);        return false;    }    else{        $(".mess").css("opacity",0).html("");        return true;    }}

c.提交上传,将图片以base64编码的方式传给后端

function addData(){    var url=$(".img-file").css("background-image");    var data1=[{"name":"url","value":url}];    $.ajax({        url:"/commmethod/method/uploadimg",        data:data1,        type:"post",        ContentType:"application/json",        success:function(resp){         ......        }    });}

3.后端代码

func (this *CommMethodController) UploadImg() {    fileurl := this.GetString("url")    DataArr := strings.Split(fileurl, ",")  //去除包装,获取到base64编码    imgBase64 := DataArr[1][:len(DataArr[1])-2]  //base64转码    imgs, err := base64.StdEncoding.DecodeString(imgBase64)    if err != nil {        beego.Error("base64 decode error:", err)    }    timenow := time.Now().Unix()    file, err := os.OpenFile("./static/img/"+strconv.FormatInt(timenow, 10)+".jpg", os.O_CREATE|os.O_WRONLY, 0644)    if err != nil {        beego.Debug("create file error:", err)    }    w := bufio.NewWriter(file) //创建新的 Writer 对象    _, err3 := w.WriteString(string(imgs))    if err3 != nil {        beego.Error("write error:", err3)    }    w.Flush()    defer file.Close()    imgname := strconv.FormatInt(timenow, 10) + ".jpg"    t := struct {        ImageName string `json:"imagename"`    }{imgname}    this.Data["json"] = t    this.ServeJSON()} func checkFileIsExist(filename string) bool {    var exist = true    if _, err := os.Stat(filename); os.IsNotExist(err) {        exist = false    }    return exist}

以上就是“Golang如何实现图片上传功能”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Golang如何实现图片上传功能

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Golang如何实现图片上传功能

今天小编给大家分享一下Golang如何实现图片上传功能的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。1.前端代码html代码
2023-06-30

VUE如何实现上传图片功能

这篇“VUE如何实现上传图片功能”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“VUE如何实现上传图片功能”文章吧。首先要创建
2023-07-04

WebUploader如何实现图片上传功能

本篇内容介绍了“WebUploader如何实现图片上传功能”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!描述:springmvc 在jsp页
2023-06-14

Android实现图片上传功能

最近在开发中,涉及到用户的意见反馈功能这一方面的开发,需要用户输入的文字或者提交的图片,效果大概类似于微信朋友圈那样的图片选择器,一开始自己找了个用universal-image-loader框架写的,很容实现,但是容易出现内存溢出,并且不
2022-06-06

PHP如何实现多张图片上传功能

这篇文章主要介绍“PHP如何实现多张图片上传功能”,在日常操作中,相信很多人在PHP如何实现多张图片上传功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”PHP如何实现多张图片上传功能”的疑惑有所帮助!接下来
2023-07-02

android实现图片上传功能(springMvc)

本文实例为大家分享了Android图片上传的具体代码,供大家参考,具体内容如下 Android端:String fileName = tvFilename.getText().toString();RequestBody descripti
2022-06-06

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录