Esta es mi primera publicación aquí, así que, por favor, no se enojen si mi formato está un poco apagado 😉 Estoy tratando de desarrollar una solución de back-end utilizando las aplicaciones móviles de Azure y node.js para scripts del lado del servidor. Es una curva pronunciada, ya que soy nuevo en javaScript y node.js provenientes del mundo incrustado. Lo que he creado es una API personalizada que puede agregar usuarios a una tabla MSSQL, que funciona bien con el objeto de tablas. Sin embargo, también necesito poder eliminar usuarios de la misma tabla. Mi código para agregar un usuario es:
var userTable = req.azureMobile.tables('MyfUserInfo'); item.id = uuid.v4(); userTable.insert(item).then( function (){ console.log("inserted data"); res.status(200).send(item); });
Funciona. La documentación de Azure node.js realmente no está en buena forma y sigo buscando un buen ejemplo de cómo hacer cosas simples. Bastante molesto y lento. La documentación del SDK sobre las operaciones de eliminación dice que funciona de la misma manera que la lectura, pero eso no es cierto. O soy mudo como una puerta mojada. Mi código para eliminar se ve así: resulta en una excepción
query = queries.create('MyfUserInfo') .where({ id: results[i].id }); userTable.delete(query).then( function(delet){ console.log("deleted id ", delet); });
También he intentado esto y ningún éxito tampoco
userTable.where({ id: item.id }).read() .then( function(results) { if (results.length > 0) { for (var i = 0; i < results.length; i++) { userTable.delete(results[i].id); }); } }
¿Puede alguien, por favor, indicarme la dirección correcta en la syntax correcta para esto y explicar por qué tiene que ser tan difícil hacer cosas básicas aquí 😉 Parece que hay muchas maneras de hacer exactamente lo mismo, lo que realmente me confunde. Muchas gracias martin
Podrías emitir SQL en tu api
var api = { get: (request, response, next) => { var query = { sql: 'UPDATE TodoItem SET complete=@completed', parameters: [ { name: 'completed', value: request.params.completed } ] }; request.azureMobile.data.execute(query) .then(function (results) { response.json(results); }); }}; module.exports = api;
Eso es de su muestra en GitHub Aquí está la lista completa de muestras para echar un vistazo a
¿Por qué estás haciendo una API personalizada para una tabla? Simplemente defina la tabla dentro del directorio de tablas y agregue cualquier autorización / autenticación personalizada.