2013-10-23 81 views
-1

所以考虑下面的想法。了解网络服务,架构示例

我想构建简单的web应用程序在哪里访问者可以发布任何东西(笑话,图片等)。每篇文章都将保存在数据库中,每篇文章都会有喜欢/不喜欢的选项。 无需登录和注册系统。

之后,我想建立简单Android应用这就需要用这种方式Android应用程序中相关数据的基础通信将收到最喜欢只职位(例如,每天的Android应用程序将显示10个职位与最票和没有更多)

我在这里阅读了许多答案主题“网络应用程序和Web服务之间的差异”,我不明白这一点。

首先,我可以在这里使用Web服务从数据库(XML)中提取数据并通过android应用程序显示出来吗?

如果可以,我如何通过这个例子了解Web服务是以下几点:
Web应用程序的目的是为用户和填充与数据发布的基础。
2. Web服务对Web应用程序一无所知,Web应用程序对Web服务一无所知。这两个是独立的实体。 另一方面,Web服务将使用从Web应用程序保存到数据库中的数据?
Web服务适用于在这样一些其他系统,他将在特定格式的一些数据发送到系统?(换句话说它不是inteneded像Web应用程序的用户)
4.我需要通过不同的方法来实现Web服务,这些方法知道如何连接到数据库并知道如何提取数据,并知道如何将特定格式的数据转换并发送回客户端。 (这是在这种情况下的Android应用程序)?然后,Android应用程序将解析该数据并将其显示给应用程序的用户。
5.物理Web应用程序,Web服务和数据库可以在不同的地方。

所以像这样? enter image description here

那么这是错误的方法,这是如何工作的?你可以通过图像建议一些其他建筑或任何帮助表示赞赏。

回答

0

我会推荐使用公开的REST API,因此它可以被android和web应用程序重用。

您的业务逻辑和数据库连接将在API上。

一种可以帮助的技术是Microsoft Web API和ASP.NET MVC,可以轻松地在API和MVC应用程序之间重复使用代码。

+0

因此,如果我弄清楚了,想法是在Web应用程序中创建类似“API”控制器的适当操作,它将从数据库返回数据(格式为JSON/XML)?在那种情况下,该控制器就像Web服务? 然后android应用程序可以检索数据,请求类似于webapplication的请求。com/api/getSomething ? – Srle

+1

正是他们被称为**“RESTFUL Web服务”**基于HTTP协议。您可以使用“API控制器”与“MVC控制器”几乎相同的方式,您可以通过网页,ajax或移动应用程序调用控制器操作(路由例如:webapplication.com/api/getSomething)。因为几乎每个平台都有一个HTTP客户端。 – Carlos487