El servicio AZURE Mobile reenvía la solicitud POST en el script de inserción de la tabla

Estoy tratando de usar el servicio móvil de Azure para procesar / manejar solicitudes GET y POST en una tabla de datos vacía. (en realidad solo uso el servicio móvil como paso) Como parte de esto, estoy intentando reenviar la solicitud a otra URL y recibir la respuesta y devolverla a través del servicio móvil. He descubierto la parte GET que se muestra a continuación, pero estoy teniendo problemas con la parte POST.

GET Part: (que funciona)

function read(query, user, request) { var p = request.parameters; var httpRequest = require('request'); var url = 'http://someURL/'+ p.ssoid; httpRequest.get(url, function(err, response, body) { if (err) { request.respond(500, "INTERNAL SERVER ERROR"); } else { request.respond(200,JSON.parse(body) ); } }); } 

Código Postal: (No funciona)

 function insert(item, user, request) { var p = request.parameters; require('request').post({ uri:'http://someURL/', headers:{'content-type': 'application/json'}, body:p.body },function(err,res,body){ if (err) { request.respond(500, "INTERNAL SERVER ERROR"); } else { request.respond(200,"Success"); } }); } 

Sé que el POST requiere un cuerpo con la información de la publicación, pero ¿cómo puedo hacerla pasar?

En una inserción, el cuerpo de la solicitud se almacenará en el argumento del item (suponiendo que esté pasando un objeto JSON). Entonces tu función se vería algo como esto:

 function insert(item, user, request) { var p = request.parameters; require('request').post({ uri : 'http://someURL/', headers : {'Content-Type': 'application/json'}, body : item }, function(err, res, body){ if (err) { request.respond(500, "INTERNAL SERVER ERROR"); } else { request.respond(200,"Success"); } }); } 

En una nota relacionada, si está utilizando el servicio móvil como un simple paso a través, también puede considerar usar una API personalizada en lugar de una tabla, donde también puede aplicar su lógica sin tener ninguna tabla (vacía) detrás.

 function insert(item, user, request) { var p = request.parameters; require('request').post({ uri : 'http://someURL/', headers : {'Content-Type': 'application/json'}, body : JSON.stringify(item) }, function(err, res, body){ if (err) { request.respond(500, "INTERNAL SERVER ERROR"); } else { request.respond(200,"Success"); } }); }