【问题标题】:iPhone/iPad(iOS) to MySQL Server - DataHandlingiPhone/iPad(iOS) 到 MySQL 服务器 - 数据处理
【发布时间】:2011-10-25 21:35:06
【问题描述】:

我想开发一个应用程序来与网络服务器通信。 我有一个网络服务器,其中包含我想在 iOS 设备上加载的数据。

我的目标是:
- 我启动应用程序
- 登录到网络服务器(如果我之前连接到网络服务器,则使用离线)
- 处理我的数据,阅读我的新闻等,更改任何数据(在线和离线)
- 在使用应用程序时检查是否有任何数据发生更改,并将更改“snyc”或“上传”到网络服务器

*The Data's are only text, no images, no files at the moment*

现在我的问题是,哪种方式最适合我的应用程序?

我的网络服务器应该使用哪个 API 来与 iOS 设备通信?
- 我已经阅读了很多 XML 和 JSON,可能 JSON 将是在网络服务器和 iOS 上最快和最容易使用它的。
我如何离线使用该应用程序并在更改时对其进行解析?如果有任何变化,我该如何同步?
我应该如何解决登录问题,如何进行身份验证?我认为这是一个非常重要的安全点。

我认为,仅使用 Request 效率不高,因为有很多数据。

感谢您的任何建议,
刷子51

【问题讨论】:

    标签: xml ios json authentication communication


    【解决方案1】:

    为了交流,考虑使用像ASIHTTPRequest这样的库。

    什么是 ASIHTTPRequest?

    ASIHTTPRequest 是一个易于使用的包装器 围绕 CFNetwork API 使得一些更乏味的方面 与 Web 服务器的通信更容易。它是用 Objective-C 编写的 并且适用于 Mac OS X 和 iPhone 应用程序。

    适用于执行基本的 HTTP 请求并与 基于 REST 的服务(GET / POST / PUT / DELETE)。包含的 ASIFormDataRequest 子类使得提交 POST 数据和 使用 multipart/form-data 的文件。

    数据格式(JSON、XML)完全取决于您。我喜欢 JSON,而且它现在很流行。

    就身份验证而言,请考虑使用 https:// 请求来保护通信。通过 https 发送用户名/密码,然后分配一个带有身份验证令牌的 cookie。在后续请求中,身份验证令牌将在 cookie 中(自动)发送,并且如果您使用 https://,则将被加密。您的 api 将需要确保 cookie 中的身份验证令牌是合法的,然后进行处理。

    这是我过去使用的一种安全方法,效果很好。您可以阅读很多关于如何保护通信安全的好文章。

    看看Best Practices for securing a REST API / web service

    另见How to Create Totally Secure Cookies

    【讨论】:

    • 我正在使用 ASIHTTPRequest,它易于使用且非常棒。谢谢你的建议!
    猜你喜欢
    • 1970-01-01
    • 2019-11-25
    • 2010-10-31
    • 2015-07-19
    • 2012-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多