我需要维护服务器和多个客户端之间的连接,以便客户端可以发送命令,并且服务器触发事件。服务器基本上是一个音乐播放器,并且客户端发送诸如“Play()”,“Pause()”,“GetPlaylists()”等命令。其一侧的服务器需要能够告诉客户端诸如“SongEnded”或“PlayerPaused”。此外,它还需要能够发送一些数据(如当前歌曲,专辑图像,播放列表等)。我可以自己去创建一个套接字,并创建自己的协议来处理上述所有情况,但有可能有人已经在我之前完成了这个任务,所以我真正想要的是一个为实时应用程序开发的框架, .NET服务器和客户端之间的通信。例如,我看过xml-rpc,但不知道该如何处理“OnClientSend”。另外,如果我没有弄错,xml-rpc会变得像REST一样。我也研究过wcf,但由于我没有经验,我不知道从哪里开始,以及如何在简单的控制台应用程序中托管服务器。.NET双向套接字实时通信协议l
重要提示:客户端需要能够不是.NET。
重要提示:这需要可以连接到java(android)。
重要提示:主要平台是Windows(服务器和客户端)和Android(客户端)。
重要提示:没有流式音频。但是,图像需要发送。
任何想法的解决方案,将不胜感激。另外,如果你有一个好的框架的链接,或者说明如何使用.NET中已经存在的组件,我会很开心。
[编辑] 的问题是,通过套接字发送数据时也不能保证(在所有!),您发送的包将被服务器在同一时间读取。我可能会再发送50,然后是100,然后再发送50个字节,但服务器可能会将其读为200byte的块,或者前100或100等,这意味着我需要创建一个缓冲区,读取消息,直到我确定是问题),我收到了一条消息(没有其他)。
它是否支持双向通信和简单的内部运行? – Alxandr 2010-09-07 19:58:58
是的,它确实允许 – 2010-09-07 20:11:16
发现客户端需要为Net才能够使用套接字进行双向通信。 – Alxandr 2010-09-09 14:47:32