我已经有一段时间在后端遇到麻烦了,Express JS使其变得特别困难。但是,我认为应该归咎于我,因为我一直在讨论它是MVC框架生成器,或者也许是有助于身份验证的框架的方法。但是,如果我是对的,Express JS应该为所有内容反映一个RESTful API。不仅用于用户注册(POST)和登录(GET)。
这就是我需要澄清的地方。从现在开始,与数据库交互时始终使用RESTful API是最佳实践吗?我遇到的一个真正的问题是用户表和点赞表。
如果用户单击照片上的“赞”按钮,我想做以下事情:
INSERT INTO喜欢(user_id,photo_url)VALUES(current_user,url);
这样做的方法是什么?如何告诉like按钮引用该API?这不像注册表格,我们给他们起名字。还是我只是进入Express文件并开始定义路线?
是的,您为希望客户端能够进行的每个ajax调用创建一个快速路由。
这是照片上“赞”按钮的一般事件顺序:
用户登录。这会在cookie中创建某种状态来标识用户(ID或更可能是服务器端会话)。
用户按下照片上的“赞”按钮。
附加到浏览器中“赞”按钮的Javascript获取当前照片ID,并使用当前照片ID作为Ajax调用的参数对“ likePhoto”进行Ajax调用。
Ajax呼叫会命中您先前设置的处理该Ajax呼叫的Express路由。
如果没有与此请求相关联的已登录用户会话,则该请求可能被拒绝(可能返回一些与未授权相关联的错误代码)。
Express路由使用cookie来标识发出请求的用户,因此它现在具有照片ID和用户,因此可以进行数据库调用以将Like添加到DB。
DB操作完成后,ajax调用可以返回200状态以及适当的响应。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句