Hay una biblioteca sync-request que es bastante fácil de usar. Internamente, genera un proceso secundario de forma sincrónica y usa then-request, por lo que las opciones son similares a esa biblioteca.
Como han indicado otros, me gustaría advertir sobre el uso de esto en su lógica de tiempo de ejecución. Sin embargo, puede ser muy útil para cargar la configuración.
Si está cargando la configuración, otra estrategia puede ser usar una secuencia de comandos separada para iniciar su proceso. Ejemplo:
var http = require("http"),
cp = require("child_process");
// Starting process
if (process.argv.length < 3) {
return http.get("http://www.google.com/index.html", function(res) {
var config = {
statusCode : res.statusCode,
headers : res.headers
};
cp.fork(module.filename, [JSON.stringify(config)]);
});
}
// Config provided
var config = JSON.parse(process.argv[2]);
console.log(config.statusCode);
síncrono de E/S a veces es útil, pero no es la intención del tiempo de ejecución orientado a eventos que es Node.js - ella ha hecho para la velocidad, no la comodidad! =) – maerics