因此,我在构建一个移动应用程序时遇到了麻烦,因为我对一切适合的地方或事物之间如何通信感到困惑。让我进一步说明
零件:
这是我到目前为止的图表,但我认为Web应用程序(管理UI)已被排除在外(在下面发布)。我只想问这个问题,而又不扩大我的研究范围,以将混乱降到最低。
我知道这些是基本问题,但我感到困惑,希望能提供一些指导。
答案 0 :(得分:1)
也许这种解释会有所帮助...
首先,您需要3台“计算机”:
为使您的应用正常运行,您将需要“连接”所有三台计算机以彼此“交谈”。对于移动应用程序和服务器之间的通信,我建议使用简单的HTTP通过Fetch API .fetch()
处理通信。
就您的数据库而言,移动电话根本不会与数据库“对话”。与数据库的所有通信将由您的服务器处理。例如,如果您需要数据库中的某些信息,您的NodeJS / Express服务器将使用数据库驱动程序/库查询数据库,然后将该信息发送回电话。 (请注意,有时人们在与NodeJS / Express相同的计算机上运行数据库,但是通常数据库将在其自己的计算机上运行。)
最后,不用担心“将信息从服务器推送到手机上”。相反,请尝试遵循这种模式。电话向服务器询问一些信息,服务器向数据库询问答案,然后服务器响应电话以完成HTTP请求。整个过程如下所示:移动应用发出一个.fetch()
请求,服务器响应。就电话而言,它不需要知道数据库是否存在。就数据库而言,它不需要知道电话是否存在。
如果您发现自己很挣扎,建议您拿起一本有关NodeJS和Express的书,并尝试一些完整的Web开发。您构建的示例Web应用程序将具有服务器“吐出” HTML或JSON数据的功能。对于您的移动应用程序,您将需要吐出JSON。在使用NodeJS / Express启动并运行之后,您可以将Web应用替换为移动应用。
我希望我的回答能帮助您指出正确的方向。构建一个全栈应用程序涉及很多活动部分,但这些都不是真正的自我解释。