使用Node.js 4.2.4和mongoDB 3.2
关注点分离-使客户端与mongoDB脱钩
问题:
我习惯于从服务器以字符串形式发送ID并从客户端以字符串形式读取ID的想法,但是在mongoDB使用ObjectID的情况下,我感到困惑,因为从逻辑上讲,这样可以使客户端与数据库-必须在ObjectID上进行强制转换,并且在客户端和服务器之间来回穿梭时要有字符串副本。
澄清问题:
1)当数据从客户端发送出去时,我假设通常使用ObjectID将UI交互映射到数据(例如,用户单击帖子)。这样做时,我是否需要将ObjectID转换为字符串,然后将其传递到客户端,然后将其转换回ObjectID,当它们返回至服务器端?
2)是否所有密钥生成和转换(如果需要)都应在服务器端进行?(与节点服务器或数据库和Web服务器之间的层耦合)
1)是的。
2)是的。
ObjectId
可以将an强制转换为字符串以进行传输(通常为JSON),并ObjectId
在需要查询数据库时转换为an 。客户只需要知道它是代表对象的任意字符串即可。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句