服务器端代码main.go

package main

import (

"io"

"net/http"

"os"

"fmt"

)

func uploadHandler(w http.ResponseWriter, r *http.Request) {

r.ParseMultipartForm(32 << 20)

file, handler, err :=r.FormFile("file")

if err != nil{

fmt.Println("r.FormFile('file') err")

return

}

defer file.Close()

// fmt.Fprintf(w, "%v", handler.Header)

f, err := os.OpenFile("./html/云文件/"+handler.Filename, os.O_WRONLY|os.O_CREATE, 0666)

if err != nil {

fmt.Println(err)

return

}

defer f.Close()

io.Copy(f, file)

w.Write([]byte("文件上传成功!"))

}

func main() {

http.Handle("/index/", http.StripPrefix("/index/", http.FileServer(http.Dir("E:/goProject/userProject/fileServer/html/"))));//主页

http.HandleFunc("/uploadfile", uploadHandler)//上传文件

http.ListenAndServe(":12345", nil)

}

html部分

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<meta http-equiv="X-UA-Compatible" content="ie=edge">

<title>云盘</title>

</head>

<body>

/**post请求提交文件**/

<form action="服务器的ip地址/uploadfile" method="post" enctype="multipart/form-data" style=" color: red;">

<input type="file" name="file" >

<input type="submit" value="提交">

</form>

</body>

</html>

效果图:

主页:

上传文件界面:

云文件列表:

如果有需要远程的,可以将服务器ip通过花生壳内网穿透映射成公网ip。这样只要穿透开着,不管在哪里,有网就可以使用网盘。

基于golang做一个简易私有网盘相关推荐

  1. 一个简易的网盘目录列表PanIndex

    网盘的目录文件列表应用非常多,老苏之前也写过一些,有的支持多种网盘 支持天翼云的在线文件目录ShareList 在线文件目录Z-file 而有的只支持某一种网盘 阿里云盘的目录文件列表程序Alist ...

  2. ecs服务器配置git_基于ECS和NAS搭建个人网盘

    场景介绍 本文为您介绍如何快速搭建一个基于ECS和NAS的私有网盘. 背景知识 本场景主要涉及以下云产品和服务: 云服务器ECS 云服务器(Elastic Compute Service,简称ECS) ...

  3. 基于nas的filerun私有网盘搭建(拒绝可道云)

    现有的云存储服务中,无论是百度网盘还是微云,不限速这个词只跟会员有关,对于不常下载的用户来说,充会员反倒有点奢靡,廉洁之风的同学可以买个共享号临时用一下. 但如果你对"白嫖"这个词 ...

  4. 还在忍受限速网盘?来搭建一套自己的私有网盘!

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | zhaoolee 来源 | https://w ...

  5. cloudreve 开源私有网盘(带离线下载)

    cloudreve 开源私有网盘(带离线下载) 环境 CentOS Linux release 7.6.1810 (Core) 3.10.0-957.21.3.el7.x86_64 安装LNMP环境 ...

  6. 如何通过容器搭建稳定可靠的私有网盘(NextCloud)

    本文使用「署名 4.0 国际 (CC BY 4.0)」许可协议,欢迎转载.或重新修改使用,但需要注明来源. 署名 4.0 国际 (CC BY 4.0) 本文作者: 苏洋 创建时间: 2020年08月0 ...

  7. 使用 Zpan 搭建低成本个人私有网盘,还不限速

    摘要:本文就介绍一个不限速的低成本个人网盘--ZPan,相较于老牌的私有网盘 OwnCloud 等,Zpan 有一个独有的优势:不限速. 本文分享自华为云社区<使用 Zpan 搭建低成本个人私有 ...

  8. docker 搭建私有网盘owncloud

    最近看到一个私有网盘owncloud搭建起来非常简单,就试了一下,尤其是使用docker搭建,简单快捷,搭建完成之后,用了一下,很简洁,打算后续把自己家里的电脑插个硬盘,装个docker,搭建ownc ...

  9. 华为云服务器如何搭建秒赞网,使用华为云服务器一键搭建 nextcloud 私有网盘

    众所周知,公共网盘产品现在变得越来越难用了,百度网盘不开会员基本等于没速度,而且对于这些公共网盘上数据的备份迁移以及安全性等问题都需要额外的考虑. 当我们拥有了自己的 ECS 云服务器,那么可以基于 ...

最新文章

  1. graphql是什么_为什么GraphQL是避免技术债务的关键
  2. wlop一张多少钱_50etf期权交易一张合约多少钱?
  3. 基于Salmon的转录组定量流程
  4. Document的理解
  5. 程序中抛出空指针异常_从Java应用程序中消除空指针异常
  6. Photoshop修复和合成梦幻人物
  7. python线性规划教程_python 利用cvxopt线性规划
  8. c# 扩展方法奇思妙用高级篇三:Enumerable.CastT 应用
  9. 双机流水作业调度问题——Johnson算法
  10. Nifi Api访问
  11. 如何编译运行opencv的sample
  12. 计算机网络中处理通信控制功能的是,在计算机网络中处理通信控制功能的计算机是()。A.通信线路B.终端C.主计算机D.通信控制处理机...
  13. 机器学习 贝叶斯分类器 拉普拉斯修正
  14. Arduino ESP8266/ESP32读取和改写MAC
  15. 逝流年沧桑伤感日志_安静得,脑袋总在回忆从前
  16. SV TechClub 第四届 美女与野兽 2019区块链游戏黑客马拉松
  17. 华大单片机HC32L136定时器时间如何计算
  18. android 人脸变形,人脸形变算法——液化变形
  19. 2019滴滴前端面试总结(一面)
  20. 昨天在poco面试的一些回顾

热门文章

  1. Android之使用Http协议实现文件上传示例(上传MP3文件)
  2. Gallery2源码阅读图片编辑
  3. 什么是 Portal
  4. 新一代iPhone美国官网首日预订量逾400万部
  5. 操作系统的内存管理机制(连续分配管理、页式、段式、段页式、快表、二级页表)
  6. 基于Mask的音频降噪
  7. 户外导航软件OruxMaps及其相关地图资源
  8. Python:使用爬虫获取世界大学学术排名存储到 Excel 并作可视化输出
  9. UnityWebRequset Post 传输文件
  10. 多媒体ASF WMV AVI