移动应用程序的前端 - 后端通信

时间:2014-07-27 08:15:54

标签: http mobile backend

我对与服务器和后端服务相关的东西很新,我想开发一个带有后端部分的移动应用程序。我希望这个后端服务于ios应用程序,Android应用程序以及网站。 我今天关注的是前端部分如何与后端部分进行通信:

  • 它的工作方式与网站的工作方式相同吗? (向服务器发送Http请求?)
  • 如何在前端和后端之间进行数据交换?
  • 这是我问题的常见解决方案吗?
  • 是否有一种有效的方法来设计这个后端来提供移动应用程序以及网站?
  • 是解析(https://parse.com/)一个很好的起点吗?

由于

2 个答案:

答案 0 :(得分:14)

依次查看您的问题:

  • 它的工作方式与网站的工作方式相同吗? (向服务器发送Http请求?)

有许多选项,但目前最常见或最流行的可能是使用RESTFUL界面: http://en.wikipedia.org/wiki/Representational_state_transfer

以前,基于SOAP的Web服务可能是最常见的选择: http://en.wikipedia.org/wiki/SOAP

请参阅此处,了解您可能现在使用REST而不是SOAP的原因: Why would one use REST instead of SOAP based services?

  • 如何在前端和后端之间进行数据交换?

假设REST,HTTP用于传输消息,而应用程序数据通常包含在XML或JSON格式中

  • 这是我问题的常见解决方案吗?

我认为问题/答案的其他部分已经涵盖了这一点。

  • 是否有一种有效的方法来设计这个后端来提供移动应用程序以及网站?

这非常依赖于您的特定服务器应用程序,尤其是其大小和体系结构。如果服务器应用程序被分解为组件或部分,以及生成“视图”的部分。或者“HTML'网络应用程序的页面是独特的,与后端'完全分开。服务器应用程序的一部分,并且您的应用程序的类型是,无论最终用户是使用网站还是移动设备,功能都大致相同,而这只是为不同的设备生成视图的方式,然后一个有效的设计将尽可能保持后端的共同点。如果应用程序的使用在移动客户端使用时非常不同,这可能没有意义。更一般地说,有效的设计将在移动和Web应用程序之间保持尽可能多的功能。

绝对值得熟悉模型视图控制器'架构模式作为大多数服务器端框架,以及许多Javascript Web客户端框架甚至iOS和(在较小程度上)Android框架都使用这些概念:

http://en.wikipedia.org/wiki/Model - 视图 - 控制器

一个重要的考虑因素是否需要推动&#39;或移动应用上的功能通知。如果是这样,您可能需要查看一些常见的解决方案,以了解它们是否满足您的需求 - 可能最容易从Apple和Google的产品开始了解,但还有许多其他解决方案可用:< / p>

https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/ApplePushService.html

http://developer.android.com/google/gcm/index.html

我不熟悉这项服务,但你可能最好先看一下简单的基于REST的方法,看看它是否符合你的需求。

答案 1 :(得分:2)

回答你的问题

  

解析(https://parse.com/)是一个很好的起点吗?

是的。

但我建议你仔细阅读

等主题

解析等服务称为移动后端即服务(MBaaS)。它们是为后端开发经验不足的移动开发人员快速创建Web服务的理想选择。

快速搜索谷歌上的MBaaS&#39;将返回许多类似于解析的服务,大多数提供免费的开发者帐户。 (每秒/应用程序有一定数量的免费API调用) 我同样使用过Apigee&amp;开源的等价物是Usergrid

这些服务将为开发人员提供一个GUI来创建&amp;部署服务和服务立即可用。 单独测试&amp;生产终点将可用。 除了基本的CRUD操作之外,这些服务还将实现轻松的社交网络集成,缓存和扩展。分析(取决于服务提供商)

安全性,可扩展性等功能由MBaaS提供商(Like Parse)构建。