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

Kow*_*lsy 8 mobile http backend

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

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

谢谢

Mic*_*ick 14

依次看你的问题:

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

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

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

请参阅此处,了解为何可以使用REST而不是现在使用 SOAP的原因: 为什么使用REST而不是基于SOAP的服务?

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

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

  • 哪些是我问题的常见解决方案?

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

  • 有没有一种有效的方法来设计这个后端来为移动应用程序和网站提供服务?

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

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

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

在移动应用上需要"推送"或通知功能的一个重要注意事项.如果是这样,您可能需要查看一些常见的解决方案,以了解它们是否满足您的需求 - 可能最容易从Apple和Google的产品开始了解,但还有许多其他解决方案可用:

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

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

我不熟悉这项服务,但您可能最好先查看一个简单的基于REST的方法,看看它是否满足您的需求.