计算机系统应用教程网站

网站首页 > 技术文章 正文

一个简单的七层文件上传服务

btikc 2024-09-10 11:59:48 技术文章 10 ℃ 0 评论

众所周知,文件上传服务有很多,例如,常见的有 ftp、lrzsz、wincp之类的。作为it从业人员,闲暇之余,写一些简单的小工具之类的也是常事。以下就是我利用form表单实现上传文件服务。偶尔在一些特殊环境可以使用的,比如某些特定场所不让使用开放工具之类的,就可以拿来用用。

话不多说,直接上代码(不会写代码的朋友可以直接关注私信我即可

html核心部分:

<form action="/upload" method="post" enctype="multipart/form-data">
    请选择上传文件:<input type="file" name="file" id=""><br>
    <input type="submit" value="上传">
</form>

go语音编写一个可以上传文件的http服务

package main

import (
   "fmt"
   "github.com/gin-gonic/gin"
   "log"
)

func PostUpload(c *gin.Context) {
   // 单文件
   file, _ := c.FormFile("file")
   log.Println(file.Filename)

   // 上传文件到项目根目录,使用原文件名
   c.SaveUploadedFile(file, file.Filename)

   c.String(200, fmt.Sprintf("'%s' 上传成功!", file.Filename))
}

func GetUpload(c *gin.Context) {
   c.HTML(200, "upload.html", nil)
}

func main() {
   router := gin.Default()
   // 为 multipart forms 设置较低的内存限制 (默认是 32 MiB)
   router.MaxMultipartMemory = 8 << 20 // 8 MiB
   router.LoadHTMLGlob("src/static/*html")
   router.GET("/upload", GetUpload)
   router.POST("/upload", PostUpload)
   router.Run(":8888")
}

至此,拷贝代码直接运行就好啦。直接运行 之后,访问http://localhost:8888/upload

进行测试



操作就更简单啦,按图示数字顺序操作即可。



上传之后,在程序运行目录即可找到上传文件。

大家觉得简单不,上面代码在设置好golang环境之后,直接拷贝运行即可。也可以关注+私聊我,拿可执行文件

大家有什么好的需求想法也可以跟我说,我可以免费给大家写一些小工具~,能电脑做的就解放双手啦~

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表