发布于2025-01-18 20:27 阅读(1056) 评论(0) 点赞(29) 收藏(3)
在我的 webapp 中,用户可以相互下载文件。如果用户A
共享了文件F
,则B
连接到后,用户可以从A
下载文件。到目前为止,每个用户都与另一个用户建立了简单的连接,例如:。文件驻留在每个用户的本地硬盘上。为了让用户可以下载文件,我脑海中有两个选择。F
A
HTTP
xxx.xxx.xxx.xxx/FileList
<a href="./FileToDownload">Click to download</a>
。我不知道哪一个是更好的选择,但第一个对我来说似乎很简单。每个客户端可以通过哪些方式共享文件,而不必将内容复制到webapp
目录中的某个位置。在这种情况下我如何使用 P2P 协议?
注意:我正在使用 Tomcat 7。
如果不在客户端机器上打开监听套接字,真正的 P2P 是不可能的(这就要求你必须在客户端机器上安装一些东西)。
如果您不想将文件存储在服务器上,我建议您使用“连接服务器”,它充当两个用户之间的网关。用户 A 将上传,用户 B 将同时下载,您只需要在内存中创建字节缓冲区。下载的字节可以丢弃。
您可以用任何语言编写一个小型客户端程序来更新可用文件,并从服务器端接收上传请求(也执行上传)我建议使用 TCP 套接字上传到服务器端,这样您就可以直接控制上传的字节(流)。
这里有一些有趣的技术问题(阻塞流、元数据(文件名、长度、创建日期……)、数据一致性、错误处理等),应该考虑。很好的任务。
我不推荐 FTP,因为您无法控制身份验证和授权(谁可以看到文件)。
作者:黑洞官方问答小能手
链接:http://www.javaheidong.com/blog/article/695079/0f634cf0a207c36793ad/
来源:java黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 java黑洞网 All Rights Reserved 版权所有,并保留所有权利。京ICP备18063182号-2
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!