Node.js reactjswebapp中的业务逻辑

Node.js reactjswebapp中的业务逻辑,node.js,express,reactjs,Node.js,Express,Reactjs,我开发了webapp(ReactJS、Flux、React路由器;服务器:NodeJS、Express) 它最初只加载html(同构方式) 现在我需要对客户端隐藏一些业务逻辑。 例如,我有评级系统。 用户应该只有在他以前没有投票的情况下才能投票。 我想应该是这样的: 用户按下投票按钮。此按钮的处理程序函数将对象发送到服务器端: { userName: login, password: password, votedObjectId: objectId } 服务器应检查数据库中是否存在该用户(

我开发了webapp(ReactJS、Flux、React路由器;服务器:NodeJS、Express) 它最初只加载html(同构方式)

现在我需要对客户端隐藏一些业务逻辑。 例如,我有评级系统。 用户应该只有在他以前没有投票的情况下才能投票。 我想应该是这样的: 用户按下投票按钮。此按钮的处理程序函数将对象发送到服务器端:

{
userName: login,
password: password,
votedObjectId: objectId
} 
服务器应检查数据库中是否存在该用户(通过用户名和密码),以及该用户是否曾经投票支持该对象(通过用户名和votedObjectId)。 如果一切正常,服务器应该将行添加到评级表中(userName和votedObjectId)

我不知道如何实施它


我想,我应该在server.js文件中创建一个js方法,它将包含此逻辑。客户端应该触发这个方法。客户端如何向server.js发送请求?

您的想法是正确的,您需要将您的交互发布到服务器,并让它处理业务逻辑。由于您的问题是如何将请求发送到服务器以触发此行为,我猜您还没有在应用程序中实现任何RESTful层

js完全有能力做到这一点,所以我想找一个关于使用Express框架实现从客户端到服务器的简单REST调用的教程。您需要决定如何处理来自浏览器的AJAX调用,无论是通过一些简单的方法,如使用JQuery,还是使用更成熟的建模层,如主干网等

在我看来,您在文章开始时使用的技术列表忽略了这一层,而且由于React是MVC中的“视图”,React Router(某种程度上)是“控制器”,因此您仍然需要“模型”部分—某种方式在Javascript世界中表示您的服务器API