将Web应用程序转换为Web服务

时间:2009-03-05 15:56:48

标签: web-services

一个。我必须考虑哪些事情? 湾我有几个存储过程由当前应用程序执行。如果我创建等效的方法来执行这些程序,那么风险或挑战是什么。

4 个答案:

答案 0 :(得分:2)

在架构上,在将Web应用程序转换为Web服务时必须考虑的一件事是对方法和数据的本地访问与远程访问不同。应设计远程访问,以便调用更加细化,并立即交换更多信息。

您需要考虑的另一件事是您将使用的序列化协议。例如,SOAP与基于REST的协议。

另外,请考虑安全性 - Web应用程序和Web服务之间的安全注意事项不同。

最后,考虑一下其他人如何了解您的网络服务(或者根本不知道)。

答案 1 :(得分:0)

一个风险是确保您的代码保持不变。

我的意思是在这种情况下存在代码重复的明显可能性,因此意味着您可能无意中忘记修改使用存储过程的其中一个位置(例如,如果添加新的变量到存储过程调用)。

然后你还必须考虑安全性。例如,公开一个向野外提供用户列表的Web服务调用可能不是一个好主意。你需要计划你将如何通过/接收身份验证&授权信息。

答案 2 :(得分:0)

管理您的代码库,正如斯蒂芬所说,如果您创建相同的方法,将会是一个巨大的挑战。最好将方法外推到一个新的库中,Web应用程序和Web服务都将使用它。您的网络应用不应包含任何数据访问代码。

使用网络服务,您需要考虑您的客户。谁将访问您的数据以及从何处访问。例如,如果来自同一网络或机器上的.net Windows客户端,TCP绑定可能是最好的。或者,如果您需要支持旧的.net框架客户端甚至Java客户端,您需要注意使用的技术。

您还需要在WCF或ASMX之间进行选择。上一段shouuld帮助回答。

答案 3 :(得分:0)

在我看来,最大的挑战是你显然很想做到这一点。我认为你犯了一个错误。

您的网络应用程序和您提出的网络服务有不同的要求。通过将应用程序“转换”到服务中,您将为服务增加应用程序的要求。

这是一个“思想实验”:如果您从头开始编写服务,忽略应用程序,该怎么办?服务和应用程序有多相似?如果他们结束了,那么转型就有意义了。否则,不是那么多。