0

目前我正在处理以下情况:

我有一个 ShareDB 后端启动并运行,以实现实时协作(文本编写)。

每次用户连接时,我都想检查用户打算处理的文档是否存在于数据库中。如果它不存在,请先创建它。如果它确实存在,请正常进行,这应该在“连接”中间件中完成:

var backend = new ShareDB();

backend.use('connect', function(context, next) {
  console.log('connect')

  var connection = backend.connect();
  doc = connection.get('collection_name', 'document_id');
  doc.fetch(function(err) {
    if (err) throw err;
    if (doc.type === null) {
      doc.create({content: ''});
      return;
    }
  });

  next()
})

但它触发了一个无限循环,因为我在连接中间件中触发了一个连接动作。

所以我不知道如何访问中间件中的数据库......知道吗?

谢谢!

4

0 回答 0