组织跨平台的Web服务的正确方法是什么?

时间:2016-04-27 13:37:53

标签: android ios asp.net json azure

可能我的问题有点含糊,所以我会试着清楚地解释一下: 通常我使用ASP.NET MVC并为网站编写后端。因此,99%的数据来自用户对表单的输入并发送到视图。

现在我想基于ASP.NET实现 web-service :这就是我想做的事情:

  • 我的伙伴在Android和iOS上编写相同的应用程序。我用相同的功能编写网站。应用程序收集一些数据(输入,地理位置等),并将其发送到公共数据库(SQL Server)。
  • 网络服务应分别发回一些数据。

我没有编写服务来获取和发布数据到不同平台的经验,但是有一些想法如何去做:所有设备都支持 JSON或XML ,所以在post-get过程之前我应该将数据(无论CLR,JVM,iOS )转换为JSON / XML并获取\ post(发送,接收)。

我希望在 Azure 上托管服务器。

你能证明我正在以正确的方式思考或表明我做了什么错误吗?有什么话题我需要学习吗? 更清楚的是,以下是问题:

  1. 为了实施它,我应该学习什么?
  2. 将Azure \ SQLServer与Android \ IOS一起使用是个好主意吗?
  3. 我是否需要编写自己的API或者有现成的跨平台通信解决方案(数据交换)?

1 个答案:

答案 0 :(得分:1)

您应该学习ASP.NET Web API,而不是使用ASP.NET WCF Web服务。 WCF不是跨平台兼容的。 Web API是因为它与REST(代表性状态转移)体系结构兼容,并且您提到的所有平台都可以使用REST来调用RESTful API。

我认为没有任何理由不使用Azure,如果这是你感到满意的话。 Android \ IOS应用程序将与您的RESTful API进行通信,因此您使用的后端与您的API消费者无关。