2009-10-24 86 views
1

我正在使用asp.net MVC。现在我不知道如何使用(win32控制台命令行)将数据从服务器(使用asp.net)发送到另一台服务器。 Plz帮助我。ASP.net(MVC)和Winsock

P/S:这种方法是否有安全漏洞?

回答

2

一般情况下,现在大多数端口都被阻塞在防火墙之后,所以用winsock设置类似的东西已经过时了。如果你想连接两台服务器,有很多选择,你可以看看System.Web.WebClient,System.Net.HttpWebRequest,Microsoft's Sync FrameworkRhino queues,但继承了前两个。

简而言之,HttpWebRequest为您提供了对您的 请求更精细的控制。 WebClient不。它为你封装了大部分内容。 下载文件,执行后表格等

HttpWebRequest的,如果你想要做更多复杂的东西是有用的:如果你想专门做的,一次性的任务,例如,

Web客户端是非常有用的。

WebClient特别简化,我们可以使用它的DownloadData, DownLoadFile从远程web服务器中检索文件/流。这里有一些 技术文章和资源使用Web客户端或WebRequest的描述:

Hosting WCF services,WebClient的 here 和WebRequest的here

1

您有两台服务器试图进行通信。如果你要使用IP(我假设你会因为你提到的Winsock),你必须这两个协议之间进行选择:

  1. TCP
  2. UDP

一旦你决定哪一个可以使用,您可以编写一个服务器进程(控制台应用程序),该服务器进程监听将为您的客户端进程(ASP.NET应用程序)提供服务的特定端口(取决于您选择的TCP或UDP端口)。

如果使用TCP/IP,则使用套接字进行通信。如果你使用UDP/IP,你将发送和接收独立的数据包。

Here是您可以使用的C#中的TCP/IP客户端/服务器代码示例。您将包装并运行此示例的客户端部分是您可以在ASP.NET MVC中访问的类。

Here是C#中的UDP/IP服务器代码示例。

关于您对这种方法安全性的问题,该问题没有提供足够的信息来正确回答。您需要提供更多信息。