问题描述
请求高手指点一下javaweb聊天如何实现点对点的发送文件简单的说一下我的思路(好像是错的,因为在服务器上发送的话,文件老是转发不过去)只有把客户端的那部分代码拿到客户端的机子上才能实现文件的点对点发送。我的思路是:1.首先开启服务器的侦听2.客户端向服务器发送文件(并把被发送者的ip也一起发送给服务器)3.服务器接收到文件并从接收到的客户端集合中找到被发送者然后把文件再转发给接收者(客户端在不停的等待服务器端的响应)好像还有一种思路我只知道思路不知道如何实现就是把每个客户端都当作服务器让每个客户端都在侦听,它只负责读文件和保存文件就好了?感觉这思路还是不错的但是用javaweb版的我不知道如何做呀?关键是来一个客户端访问的话如何让其侦听呢(就像开启服务器侦听一样那怎么开启呀!如果真的开启的话那也只是开启服务器的侦听至于客户端的如这句:ServerSocketserver=newServerSocket(listenPort);,我真的不知道怎么开了)本人分不是很多(因为是刚注册的),还是希望高手不吝赐教小弟先谢谢了!!!!!!!谁还有更好的思路呢?(用flash的话就免了,那个我一点都不懂)求教中…………
解决方案
解决方案二:
解决方案三:
我觉得是这样的:当一个用户开始发送时,提示另一个用户接收。然后为他们做一个中转,也就是读出那边传过来的,再发出去。
解决方案四:
2楼没看我的思路嘛?我的和你说的差不多的呀!但是文件就是发送不到接受者的那边我把代码拿出来测试把客户端的代码放在每个客户端的机子上ip地址绑定好再运行那段客户端代码就可以实现点对点发送了但是那段客户端发送代码放在服务器上每个客户端都去访问服务器上的那段客户端代码的时候就实现不了点对点发送了不过发送者可以把文件发送给主机也就是客户端发送代码所在的主机上所以我才会这么想的(好像还有一种思路我只知道思路不知道如何实现就是把每个客户端都当作服务器让每个客户端都在侦听,它只负责读文件和保存文件就好了?感觉这思路还是不错的但是用javaweb版的我不知道如何做呀?关键是来一个客户端访问的话如何让其侦听呢(就像开启服务器侦听一样那怎么开启呀!如果真的开启的话那也只是开启服务器的侦听至于客户端的如这句:ServerSocketserver=newServerSocket(listenPort);,我真的不知道怎么开了)总而言之现在是客户端发送代码在哪个机子上哪个机子就能接受到发送者发过来的文件难道web版的点对点发送文件真的实现不了?那webqq的文件发送又是怎么做的呢?实在没办法的话估计也只能用上传与下载的方式间接实现了!继续求解………………哪位仁兄有源码最好了万分感谢!我的邮箱:qiuyulongjava@Yahoo.cn