ios - Apple swift - 应用程序如何连接到现有的 heroku/S3 数据库

标签 ios amazon-s3 swift

我是 iOS 新手和 SWIFT 新手,之前没有使用 Obj-C 的经验。但是,我对 Ruby 并不陌生。我在 heroku 上有一个基于 Web 的应用程序,并且正在开始学习 SWIFT,因此我可以构建一个 iOS 对应的应用程序。在开始之前,我需要先了解全局,但我无法弄清楚这些应用程序如何连接到数据库。

iOS 应用程序能否连接到 S3 数据库...并与网站共享该数据库?是否有我仔细查看过的有关此过程的文档。

最佳答案

将 iOS 应用程序连接到公共(public)数据库确实不是一个好主意 - 所有服务器逻辑都应在客户端上实现,并且您还需要在应用程序中硬编码数据库用户名和密码。

更好的方法是创建一个服务器应用程序,公开一组 REST API 并负责处理数据库。通过这种方式,您可以在服务器端更好地控制应用程序客户端能够对数据库执行的操作。

例如,如果您有一个订单输入应用程序,您可以创建 API 来:

  • 登录
  • 注册
  • 创建订单
  • 修改订单
  • 添加联系人
  • 删除联系人
  • 等...

一些优点是:

  • 如果您需要更新逻辑(而不是 API 接口(interface)),您只需更新服务器,而在您的场景中,您需要发布新版本的移动应用
  • 您控制和限制客户端应用访问数据的方式(例如防止一个用户访问另一个用户的订单)
  • 如果您想在另一个平台(android,...)上开发相同的应用程序,您可以重用相同的 API

要开始,我建议您阅读 AFNetworking tutorial在 raywenderlch.com 上,专注于 ios 网络库,但谈论 JSON、REST、远程 API 等。

接下来你必须选择一种服务器端技术 - 现在最流行的是 node.js - 要开始你可以阅读同一网站上的其他教程:

如果您不想使用 node.js 和/或 mongodb...同样的架构适用,只是语言和技术不同。只需转置您从那里学到的东西。

如果您想了解在服务器端使用的其他语言,只需谷歌搜索即可 - 如果您想使用 ruby​​,请尝试使用 ios rest api server ruby​​

注意:我没有提到 swift 因为你的问题看起来更像是一个架构问题而不是特定于语言的问题。我在这里提到的教程使用 objective-c,一旦你设计了一个架构并在服务器端选择了语言,你就可以开始研究如何从 swift 调用 REST API。

关于ios - Apple swift - 应用程序如何连接到现有的 heroku/S3 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24622481/

相关文章:

iphone - 如何计算从 iphone 技术中的服务获得响应所花费的时间

amazon-web-services - 添加多个 S3 路径以使用 terraform 粘合爬虫

ios - 交互式 Pop Gesture 的安全区域底部布局问题

正则表达式,忽略字符串中可能出现的匹配项

node.js - 如何在 aws s3 中指定索引文档?

swift - 在 Apple Swift 中传递 C 风格的未初始化指针?

ios - 快速 pushViewController 内存

ios - 如何在 iOS Charts 3.0 中获取最大 y 值的 x 值?

ios - Spritekit 碰撞

java - AWS SDK `PutObjectResult` 元数据是否没有保存内容长度值?