Actualmente estoy lidiando con la siguiente situación:
Tengo un respaldo de ShareDB en funcionamiento para realizar una colaboración en tiempo real (escritura de texto).
Cada vez que un usuario se conecta, me gustaría verificar si el documento en el que el usuario pretende trabajar existe en la base de datos. Si NO existe, créelo primero. Si SÍ existe, proceda normalmente, esto debe hacerse en el middleware "conectar":
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() })Pero desencadena un bucle infinito, porque desencadeno una acción de conexión dentro del middleware de conexión.
Así que no tengo idea de cómo acceder a la base de datos en el middleware... ¿alguna idea?
¡Gracias!