用http实现文件共享(python和go语言示例)
来源:互联网 发布:ubuntu 16.04服务器版 编辑:程序博客网 时间:2024/06/05 06:30
http://www.cnblogs.com/MikeZhang/archive/2012/02/11/httpFileSharePythonAndGo.html
平时工作中少不了文件共享,所以了解文件共享的方法很有必要。
文件共享有很多方法,大致分为以下几类:
1、系统共享(windows共享或samba等):
windows下我们可以借助windows共享完成简单的文件共享,linux下也可以用samba之类的软件轻松实现。
2、ftp共享:
可以借助常见的ftp软件实现。
3、http共享:
可以借助常见的web服务器(比如IIS、Apache等)实现。
今天我要介绍的是http文件共享。
首先以IIS为例介绍下用常用的web服务器实现文件共享的方法,具体如下(以我机器为例):
1、打开IIS,打开“网站-->默认网站”,右键点击“属性”,点击“主目录”,勾选“目录浏览”选项,如下图所示:
2、进入文件夹C:\Inetpub\wwwroot,拷贝文件“1.7z“到这个目录:
3、打开浏览器,输入本机ip(比如我的:192.168.1.123),即可看到共享的文件并可以下载:
点击“1.7z”即可下载。
这里我已经实现了文件共享,但如果我没有IIS或者Apache之类的web服务器软件怎么实现http文件共享呢?
没有就自己写一个用来共享文件的程序呗!
呵呵,可别被吓到,这个借助python或者go语言可以很轻松的实现:
1、python实现http文件共享:
用过python的都知道python有一个很牛x的命令:
python-m SimpleHTTPServer
在C:\Python27下运行命令:
打开浏览器,可以看到如下效果:
这个命令的默认端口是8000,如果我再加一个端口参数,可以用其它端口进行访问,命令如下:
打开浏览器:
知道了这个原理,可以写个bat文件,在需要的时候copy到相应的目录双击即可,比如我的httpShare.bat文件如下:
python -m SimpleHTTPServer 80
默认用80端口,访问时候只需要输入我的ip地址即可。
2、go语言实现http文件共享:
上面的方法很方便,windows和linux通吃,不过前提是要安装python
这里我有个用go语言实现的,也是windows和linux通吃(windows下不知道怎么配置的可以参考我之前的文章:http://www.cnblogs.com/MikeZhang/archive/2012/02/09/windowsGo.html),类似C/C++,是代码可移植,使用前你只需编译一次。
下面是示例代码(httpShare.go):
package mainimport ( "http" "fmt")func main(){ h := http.FileServer(http.Dir(".")) var port string fmt.Printf("Please input port Number: ") fmt.Scanf("%s",&port) http.ListenAndServe(":"+port, h) }
运行效果:
技术是为生活服务的,觉得那个简单就用那个吧,反正上面的几种方法都可以实现文件共享。
好,就这些了,希望对你有帮助。
- 用http实现文件共享(python和go语言示例)
- 使用Go语言实现http服务端指定路径的文件.
- Go语言 简单的http服务器示例
- GO语言实现文件上传
- Go语言使用http下载文件
- go示例1:文件读写和排序(快速 冒泡)
- Go语言 如果实现http重连?
- go语言实现http服务端与客户端
- m3u文件转pls文件(go语言实现)
- go语言示例(总目录)
- go语言示例:变量
- go语言示例:常量
- Go语言学习示例
- Go语言结构示例
- go语言实现一个http服务器完成静态页面的账号和密码登陆
- Python快速实现文件共享
- Linux下GO语言内存共享,CGO实现
- Python实现向s3共享存储上传和下载文件
- 高仿Android QQ2012登陆界面和注册界面
- Android中NFC功能流程图解析及代码演示
- oracle学习之学习体系
- android开发规范
- 客户端Script不弹出对话框的原因:
- 用http实现文件共享(python和go语言示例)
- Linux 64位系统下inet_ntoa报段错误问题
- 今天一看,自己发的文章原来这么多了。openeim
- 获取手机的 cpu 内存 sd卡 号码
- windows中动态链接库的创建
- 【Oracle】-【move】【索引】无数据的主键索引VALID还是UNUSABLE
- ASP.NET 中的 HttpHandler
- 期望月薪中 写上你的保守价格
- Hough Transform 霍夫变换检测直线