1

我正在尝试构建一个系统,该系统将拥有一个网站和一个 iPhone 应用程序,这些应用程序将使用相同的数据。我了解我将如何创建和构建网站,但在添加 iphone 应用程序时,我不确定它将如何应用。

我对设计的考虑:

- 使用 C#、SQL Server、asp.net 作为网站(会尽量使用 Web 服务获取我的大部分数据)

- 使用 Objective-C、x-code 等进行 iphone 应用程序开发

1.) 我需要为 iphone 公开一个 Web 服务来与之交互吗?如果是这样,那是否会被视为与实际网站分开的网络应用程序?或者 Web 服务会与网站一起构建,然后 iphone 也会与该 Web 服务进行交互?

2.) 在公开 Web 服务时,我需要考虑哪些安全方面的问题?

3.) 对于构建这样的系统还有其他架构建议吗?也许个人经验是做一个运行在同一个数据库上的网站/iphone 应用程序。

4

3 回答 3

4
  1. 是的,您需要公开一个 Web 服务以供应用程序绑定/对话。我建议将该服务作为一个单独的站点运行(例如 data.yourdomain.com,该站点将在 yourdomain.com 上运行),该站点也将其用于其数据。这样,您就可以为“端点”(站点和应用程序)共享相同的架构。

  2. 确保您的 Web 服务在每次调用时都使用身份验证令牌(用户名/密码或 oauth/等),这将有助于防止对服务/数据库进行任何未经授权的调用。此外,如果您的服务通过有效的 HTTPS 连接(并且只有 https)公开,将防止嗅探数据以获取密码。

  3. 正如我在第 1 点中所说,以这样一种方式构建服务,即无论什么“端点”访问它都无关紧要。这样,如果您添加了一个 android 应用程序或 Windows Phone 应用程序(甚至是第二个网站),您将不需要提供新的服务。也许将每个应用程序“帐户”绑定到“端点类型”(例如 Android/iPhone/WinPhone/WebSite),这将允许您自定义返回的数据对象(如果需要)。

于 2012-06-26T07:07:11.337 回答
0

我需要为 iphone 公开一个 Web 服务来与之交互吗?如果是这样,那是否会被视为与实际网站分开的网络应用程序?或者 Web 服务会与网站一起构建,然后 iphone 也会与该 Web 服务进行交互?

这取决于,如果您想要一个原生应用程序,那么您将公开该服务,否则您可以开发一个 iPhone Web 应用程序

在公开 Web 服务时,我需要考虑哪些安全方面的问题?

正常的安全考虑,就像您将 Web 服务开发到 Windows 桌面应用程序一样

对于构建这样的系统还有其他架构建议吗?也许个人经验是做一个运行在同一个数据库上的网站/iphone 应用程序。

尽量使 Web 服务清晰明了

于 2012-06-26T07:07:28.233 回答
0

第一次使用时,您的所有项目只使用一个数据源。使用 Web 服务公开数据库。用户身份验证以调用 Web 服务程序以确保安全。

于 2012-06-26T07:44:16.933 回答