我正在考虑为 iPhone 和 Android 创建一个需要访问通用后端来检索帐户信息的应用程序。两者都可以通过 https 访问 Web 服务吗?还有什么其他方法可以让我拥有一个可供两者访问的后端接口?
4 回答
它们都通过 http 和 https 工作,这是一个足够常见的协议。我建议您使用 RESTful Web 服务,以便通过 URI 公开您的服务,例如http://www.myservice.com/weather/zip/98007,这将返回一个可由客户端解析的 XML blob。
如果你从零开始,我肯定会选择RESTful
返回/接受的服务JSON
......两个平台都有很多库可以接受JSON
并将其转换为数组和字典。
我建议使用 RESTful Web 服务后端,它都是标准的 HTTP 和/或 HTTPS。如果您可以使用 Ruby on Rails,它的默认脚手架将为您提供大约 99% 的路径,并且对于 iPhone,有一个名为 ObjectiveResource 的开源项目可以自动与此 Rails 后端进行通信。我还没有调查 Android 上有哪些可用选项,但由于它都是简单的 HTTP,它应该很简单。我不是 ObjectiveResource 的维护者,但我贡献了一些代码。你可以在这里查看:
我看到与其他服务一起使用的一种好方法是编写后端,使其可以以不同类型反馈数据 - 对于 Android,XML 响应是最好的,但对于 iPhone,发送回 plist 数据是首选(尽管它如果需要,也可以使用 XML)。在这两种情况下,简单地将更新 POST 回服务器比用 XML 包装更新更容易。
两个平台都应该能够使用您希望使用的任何形式的身份验证,我知道的 iPhone 支持所有 HTTP 身份验证方法。