C#TCP / IP服务器和客户端

时间:2010-12-13 07:45:34

标签: c# tcp

我有一个简单的TCP客户端/服务器应用程序。如何在服务器端设置这两个程序,它需要用户名和密码,当客户端尝试连接时,他们必须输入正确的用户名和密码并将其发送到服务器端,服务器端将检查那是否是正确的用户名和密码,如果正确则允许连接,否则拒绝连接

3 个答案:

答案 0 :(得分:2)

使用WCF,因为你之前显然没有使用过纯套接字。如果你试图学习套接字并发明自己的协议,它很可能是一个更稳定的解决方案。

您可以将WCF与netTcpBinding一起使用以实现您的目的。你在这里得到一个例子:http://www.dotnetspider.com/resources/19314-Client-server-sample-using-WCF-net-tcp-binding.aspx

我很抱歉,如果这不是您寻找的答案,但有很多需要正确实施才能获得一个轻松的tcp / ip客户端/服务器解决方案。

答案 1 :(得分:1)

使用简单的TCP / IP无法做到这一点。你要么必须发明某种协议,要么使用WCF等。

由于“连接”在发送任何内容之前发生,因此无法“与连接一起”发送凭据。您必须让客户端连接,接收“登录”命令,检查凭据并传回一些唯一标识符,然后需要与每个命令一起发送,以便服务器可以检查客户端是否经过身份验证。如果WCF不是一个选项,我就是这样做的。

答案 2 :(得分:0)

White Thorsten在技术上是正确的,我仍然认为有一个解决方案:

让服务器接受所有连接,但是然后期望作为连接中的第一个数据用户名和密码。如果它们不正确,服务器将关闭连接,而不处理客户端可能已在连接上发送的任何请求。

相关问题