ShareDrop是一个受苹果AirDrop服务启发的网络应用。它允许你直接在设备之间传输文件,无需先上传到任何服务器。它使用WebRTC进行安全的点对点文件传输,并使用Firebase进行状态管理和WebRTC信令。
ShareDrop允许你在同一本地网络(即具有相同公共IP地址的设备)中向其他设备发送文件,无需任何配置 - 只需在所有设备上打开https://www.sharedrop.io,它们就能看到彼此。它还允许你在不同网络之间发送文件 - 只需点击页面右上角的"+"按钮创建一个带有唯一URL的房间,然后与你想发送文件的其他人分享这个URL。一旦他们在自己设备的浏览器中打开这个页面,你们就能看到彼此的头像。
ShareDrop和AirDrop的主要区别在于,ShareDrop需要互联网连接来发现其他设备,而AirDrop不需要,因为它在设备之间创建了一个临时无线网络。另一方面,ShareDrop允许你在移动设备(Android和iOS)和桌面设备之间,甚至在不同网络之间共享文件。
支持ShareDrop!
ShareDrop是免费的,但运营它仍然需要费用。
如果你使用并喜欢它,请考虑通过以下方式进行小额捐赠:
或者
以帮助我为所有人保持免费。谢谢!
支持的浏览器
- Chrome
- Edge(基于Chromium)
- Firefox
- Opera
- Safari 13+
本地开发
- 设置Firebase:
- 注册一个Firebase账户并创建一个数据库。
- 转到"Security Rules"标签,点击"Load Rules"按钮,选择
firebase_rules.json
文件。 - 记下你的数据库URL和密钥,可以在"Secrets"标签中找到。
- 运行
npm install -g ember-cli
安装Ember CLI。 - 运行
yarn
安装应用依赖。 - 运行
cp .env{.sample,}
创建.env
文件。Foreman将使用此文件在本地运行应用时设置环境变量。SECRET
密钥用于加密cookies并基于"/"路由的公共IP地址生成房间名。它可以是任何随机字符串 - 你可以使用例如date | md5sum
生成一个。NEW_RELIC_*
密钥仅在生产环境中必要。
- 运行
yarn develop
启动应用。
部署
Heroku
创建一个新的Heroku应用:
heroku create <应用名称>
然后将应用推送到Heroku仓库:
git push heroku master