node.js / mongoDB-如何在客户端和Web服务器之间管理ObjectID

尼克·派恩达

使用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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Node.js服务器上的多个客户端之间同步数据

如何使用客户端JavaScript从MongoDB和没有框架的Node.js服务器中查找并返回数据?

如何在客户端(CryptoJS)和服务器(Crypto Node.js)之间建立Diffie Hellman连接

Node.js:服务器和客户端之间的数据交换

Node.js服务器和客户端之间的变量

Node.js,如何在客户端退出后使服务器保持活动状态?

如何在Node.js中将文件从服务器发送到客户端

如何在Node / Express中将JS从客户端移动到服务器?

无法在 Android 客户端和 Node.js socket.io 服务器之间通信

在Node.js上使用soket.io进行服务器和客户端之间的连接

如何在Angular / Node.js / Express中将客户端参数传递给服务器端

如何在Node.js中从客户端调用服务器端函数(例如html按钮onclick)?

如何在node.js服务器上的多个客户端之间同步数据库文件而不下载那些已经下载的文件?

如何正确处理 Node.js gRPC 客户端和服务器之间的回调

Node.js服务器(移动客户端)

如何在 Linux 服务器上部署 Node.js 和 MongoDB 应用程序

Socket.io Node Js服务器和React js客户端未连接

如何在Handlebars(客户端)中打印从Node JS服务器发送的JSON对象数组?

如何在 Node.js 中从客户端获取数据到服务器(不带 url 参数)?

如何使用jquery ajax和node js在快速框架中将数据从客户端传递到服务器?

在客户端和Node.js服务器上使用静态JavaScript文件

Node.js服务器和android客户端

具有Node.js的服务器和具有XMLHttpRequest的客户端

如何将jwt从swift客户端传递到node.js服务器

如何从Node.js服务器流到客户端

如何在 Node.js 和 React 中分离客户端、API、管理员?

Node.js 和 Mustache.js:如何将服务器端渲染与客户端 Mustache 模板分开?

从服务器端在客户端获取变量(express.js,node.js)

ReactJS客户端和Node.js服务器之间的Websocket'Sec-WebSocket-Accept'标头不匹配