点击上方 Java后端,选择 设为星标
优质文章,及时送达
转自量子位
下面这张「二维码」,最近在 GitHub 上火了。

为什么这么火?
因为只要扫描二维码,通过 Wi-Fi,文件就可以在电脑和手机之间互传 — 文件传输助手。
Linux 传安卓,分分钟搞定。
打破系统之间的 “边界”,就是它最厉害之处。公众号 Java后端 历史发布过很多 GitHub 热门项目的文章,欢迎关注公众号 Java后端 回复「666」获取。
如何通过二维码传输文件?
那么,怎么就能通过一张二维码,就能完成文件传输呢?
简单来说,就是将 Web 服务器,绑定到随机端口上的 Wi-Fi 网络接口地址,然后为其创建一个处理程序。
这个处理程序会打印出来一张二维码,对文本进行编码:
http://{address}:{port}/{random_path}
大多数二维码应用程序,都能检测到解码文本中的 URL,并采取相应的行动 (即使用默认浏览器打开解码后的 URL)。
所以,当二维码被扫描之后,手机浏览器就会开始下载内容。来看下上手效果吧。
首先,是将文件发送到手机:

接下来,看看手机接收文件的效果:

使用方法
需要注意的是,这个项目要用到的语言是 Go 1.8。
安装过程
安装项目非常简单,一行代码就能搞定:
go get github.com/claudiodangelis/qrcp
或者,从 Releases 页面下载最新的二进制文件到 /usr/local/bin (或 $PATH 中的另一个位置) ,然后为二进制文件加入执行权限:
chmod +x /usr/local/bin/qrcp
发送文件
要发送文件到手机,则输入:
qrcp MyDocument.pdf
若是要发送多个文件,也非常简单:
# Multiple files
qrcp MyDocument.pdf IMG0001.jpg
# A whole folder
qrcp Documents/
也可以在传输之前,将文件压缩:
qrcp —zip LongVideo.avi
接收文件
当接收文件时,qrcp 会提供一个 “上传页面” ,可以通过这个页面,从移动设备中选择文件。
接收文件到工作目录:
qrcp receive
将文件接收到特定目录:
# Note: the folder must exist
qrcp receive --output=/tmp/dir
One More Thing
提到文件传输,苹果和华为生态的小伙伴们可能就会表示不服了……
苹果 AirDrop,不香吗?
华为” 一碰传 “,不香吗?
确实,在自家系统生态内部还是非常 OK 的,但” 出了圈 “…… 可就不好说了。
或许你还会问,微信或 QQ 传送文件不就行了?
行,但是传输文件大小有限制,有些文件还会被压缩……
如果对于跨终端、跨设备、跨平台的文件传输,你有别的妙招,也别忘了分享给我们,笔芯~
GitHub 项目地址:
https://github.com/claudiodangelis/qrcp
-END-
如果看到这里,说明你喜欢这篇文章,请 转发、点赞。同时 标星(置顶)本公众号可以第一时间接受到博文推送。
推荐阅读
1. 去掉烦人的 !=null
2. 一行代码:你的纯文本秒变Markdown
3. Spring Boot 中的条件注解底层是如何实现的?
4. 不能对面试官说精通Spring,说了就凉凉了
560

被折叠的 条评论
为什么被折叠?



