为可下载的 ASP.NET 产品开发 API?

问题描述 投票:0回答:2

我们已经有了使用 ASP.NET Web 表单 (3.5) 构建的产品,并且正在研究添加 API 以允许其他应用程序访问应用程序内的数据和业务逻辑。

  • 实现这一点的最佳方法是什么? 我倾向于使用 Http 处理程序来读取发布的 XML 并返回 XML,但我确信一定有更好的方法。 是否建议使用 WCF 之类的东西来代替?

  • 由于该产品将由用户在自己的服务器(而不是托管)上下载和安装,因此第一次就做好的压力似乎很大,因为一旦用户开始下载和使用该产品,做出更改将变得困难产品。 关于如何管理这个问题有什么建议吗?

asp.net api webforms product
2个回答
0
投票

我假设如果它是用 Web 表单制作的,用户将拥有一个 Web 服务器/IIS。因此,我建议在您的产品中添加网络服务。

这样,您就可以将其保持开放状态以进行自定义,并且不会将其与 Web 表单项目联系得太紧密。如果客户愿意,甚至可以在不同的网站/服务器上配置它们。大多数现代应用程序都可以轻松调用 Web 服务,因此它们很受 API(谷歌、亚马逊、Facebook 等)的欢迎。

如何管理?我认为版本。让客户下载新版本/错误修复。我会了解开源应用程序如何处理频繁的更新和分支,并执行相同的操作。如果有人知道如何做到这一点,那就是流行的下载应用程序。


0
投票

WCF 当然是一种可行的方法,但我建议像 Nikki 一样,使用 Web 服务。

关于“管理”,嗯,你说得很对:一旦你发布了界面,就很难改变它们。我的意思是...

假设您想要使用 Web 服务,一旦您发布了 WSDL 接口,并且发现您“设计”得不好,您可能会迫使那些已经使用您产品的人下载新规范并重新实现他们的代码。但是,如果您在 Web 服务处理程序中发现编程错误,您可以尽快修复它,而无需更改公共 Web 服务的设计合同 您想要与公共 API 一起提供的 产品 必须像 Nikki 所说的那样进行版本控制。

“软件产品”和公共 API 之间的区别在于 API 是公共接口,任何人都可以使用它来开发自己的软件来与您的应用程序交互。软件产品是开箱即用的,可以运行您的代码。 例如,Facebook、PayPal 等发布了很多 API,您可以找到很多将这些 API 封装成您喜欢的语言的库。

© www.soinside.com 2019 - 2024. All rights reserved.