2016-09-23 1 views
0

Je commence avec l'écosystème Koa. Je sais qu'il est basé sur des fonctions de générateur (un sujet qui est assez nouveau pour moi), et j'ai des problèmes avec une tâche très simple: Appeler un service web externe, récupérer la réponse et l'envoyer à l'application client (Angulaire dans mon cas).obtenir la réponse de la demande dans Koa avec koa-demande dans le noeud

Le code:

var koa = require('koa'); 
var app = koa(); 
var koarouter = require('koa-router'); 
var router = koarouter(); 

router.post('/devices', function *(next) { 
    var reqdata = {}; 
    reqdata.info="request to send" 
    var options = { 
     url: url_getDevices, 
     headers: reqdata 
    }; 

    var response = yield request(options); 
    var info = JSON.parse(response.body); 

    console.log(info); 

}); 

Je suppose que je dois gérer avec rendement et suivant mais je fais des tests différents et avoir des problèmes, et je connaître les meilleures pratiques avec Koa dans ce cas.

Merci!

Répondre

0

Essayez-vous simplement d'envoyer info en réponse à partir du gestionnaire de requêtes POST? Vous pouvez simplement l'envoyer en tant que body de votre réponse. En Koa, this.body est un alias pour this.response.body:

this.body = info; 

Je recommande également de vérifier la documentation pour Koa sur their website.