C# 向服务器添加web界面的方法?
问题:我有一个用C#编写的邮件服务器,想添加一个web界面 在我看来,有两种可能性:C# 向服务器添加web界面的方法?,c#,vb.net,web-services,architecture,C#,Vb.net,Web Services,Architecture,问题:我有一个用C#编写的邮件服务器,想添加一个web界面 在我看来,有两种可能性: 1) 有人想在自己的网页上集成邮件服务器/webapp-->需要WebService接口 2) 有人希望通过web界面访问邮件服务器,例如在localhost上进行配置,但也可能用于编写和阅读电子邮件。 统一这两个要求的最佳方式是什么? 我的意思是,对于2),mailserver基本上需要自己的Web服务器,在端口80或n上侦听,在那里它显示一个页面,例如,理想情况下使用Web服务将Web服务器功能集成到集成
1) 有人想在自己的网页上集成邮件服务器/webapp-->需要WebService接口
2) 有人希望通过web界面访问邮件服务器,例如在localhost上进行配置,但也可能用于编写和阅读电子邮件。
统一这两个要求的最佳方式是什么? 我的意思是,对于2),mailserver基本上需要自己的Web服务器,在端口80或n上侦听,在那里它显示一个页面,例如,理想情况下使用Web服务将Web服务器功能集成到集成的Web服务器网页中。但是,如果在一台普通的Web服务器上运行,集成的Web服务器不应该干扰它 此外,客户端和公司网络中也存在端口和防火墙问题
这是可行的/好主意,还是有更好的方法?您可以使用SOAP将所有数据作为web服务公开。NET很好地集成了这一点。除非另有规定,否则他们使用标准端口80。这里有几种方法。不干扰现有Web服务器的最不引人注目的方式可能是让邮件服务器在Web服务器不使用的端口上创建一个端口(如8080或8008等)。然后它可以监听请求并发送您喜欢的任何数据或HTML页面 这种方法的缺点是失去了ASP.NET在服务器上提供的所有便利。对于只返回数据的简单邮件服务器,这没有问题。对于阅读和写电子邮件来说,虽然不太方便,但仍然可行。毕竟,有很多基于Web的电子邮件应用程序使用非常原始的HTML页面进行表示
您可以在中获得有关使用HttpListener的更多信息。Nowdays.NET通过相同的[WebService]类提供SOAP和JSON接口。因此,部署Web应用程序将为您解决这两个问题 这里仍然存在的一个问题是如何在邮件和webmail应用程序域之间进行互操作。这就是邮件服务器体系结构的问题
根据我的经验,从您自己的应用程序中运行ASP.NET基础设施几乎是不可能的。我认为IIS7将允许您使用任何编码(不仅仅是HTTP)在任何TCP端口上侦听服务,因此您可以在ASP.NET中托管服务,然后公开页面和WCF(soap)端点。我也这么认为,但我关心的是防火墙和端口。我不确定web服务如何发送和接收请求。“web服务”的全部意义在于它是通过HTTP、tcp端口80提供服务的。就像任何其他web请求一样。。。特别是通过典型的防火墙配置来实现轻松访问。@Andrew Barber:好的,如果这是真的,那么按照我描述的方式来做是个好主意。aspnetserve(谷歌代码)正是这样做的。只要看看我是否能让它在Linux上工作就行了。“现在”?ASMX(WebService)已经成为过去。WCF提供JSON和SOAP以及更多功能。