golang开发gin框架上传文件

· · 3383 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

使用gin框架上传文件,仅个人想法。

后端接口:

func uploadFile(context *gin.Context) {

result := &model.BaseResult{}

file, header, err := context.Request.FormFile("file")

if err == nil {

filename := header.Filename

out, err := os.Create("static/res/uploadFile/excel/" + filename)

if err == nil {

defer out.Close()

_, err = io.Copy(out, file)

if err == nil {

log.Println("上传表格成功")

res :=map[string]interface{}{

"filePath":"/res/uploadFile/excel/" + filename,

              "fileName": filename,

            }

result.Code =0

            result.Data = res

result.Msg ="上传表格成功"

        }else {

result.Code = -3

            result.Msg ="复制文件出错"

        }

}else {

result.Code = -2

        result.Msg ="创建文件出错"

      }

}else {

result.Code = -1

      result.Msg ="接收表格出错"

  }

context.JSON(http.StatusOK, result)

}

前端ajax请求

$(document).on('change', '.uploadExcel', function () {

var formData =new FormData();

    var f =$('.uploadExcel')[0].files[0]

if (f !==undefined) {

formData.append('file', f);

        $.ajax({

url:"/uploadFile",

            type:"POST",

            data: formData,

            contentType:false,

            processData:false,

            dataType:"json",

            mimeType:"multipart/form-data",

            success:function (res) {

console.log(res.data)

if (res.code ===0) {

alert("上传文件成功")

}else {

alert("上传文件失败")

}

},

            error:function (err) {

console.log(err)

}

})

}

});

前端也可使用form表单提交文件


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:

查看原文:golang开发gin框架上传文件

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

3383 次点击  
加入收藏 微博
1 回复  |  直到 2019-11-19 19:01:23
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传