我正在设置我的网站,通过短信接收来自人们的信息。它的工作方式是文本编号,然后该服务将HTTP POST发送到我指定的URL。我听说.asmx文件比.aspx文件更好,因为它们不会经历整个页面生命周期。但是,我真的不明白如何运行.asmx文件,甚至可以通过POST调用它,即www.mysite.com/webservice.asmx?我知道我可以使用.aspx文件,但我想在我开展这项工作之前检查是否有更好的方法。
感谢您的见解!
答案 0 :(得分:7)
虽然任何扩展都可以映射到ASP.NET中的任何处理程序,但默认情况下.aspx
映射到页面处理程序,.asmx
映射到Web服务处理程序。我认为您正在寻找代表通用简单处理程序的.ashx
。在向项目添加一个ProcessRequest
接口后,您只需要实现IHttpHandler
接口(添加新项->
通用处理程序)。
如果您想手动处理请求,.ashx
效果很好。仅当您要提供Web服务(例如SOAP)时,才应使用.asmx
。因此,最佳解决方案取决于它们发送的HTTP POST请求的格式。如果他们使用自己的特定协议在POST中发送原始数据,请使用.ashx
。否则,如果他们使用标准RPC(SOAP,XML-RPC,...)协议,.asmx
可能更好。
答案 1 :(得分:0)
使用Visual Studio创建.asmx文件。它应该使用 HelloWorld 方法创建模板。使用您喜欢的浏览器浏览到它,您实际上将获得有关如何使用各种方法向其发布请求的说明。
你还没有提到另一种类型:ashx。但是,在您的情况下,Web服务(asmx)是有意义的。