По существу я пытаюсь сделать запрос HTTP с моим коа приложением и было интересно, что именно я делаю неправильноПочему этот генератор возвращает функцию вместо значения
var request = require('koa-request');
var beatsGen = beats();
var response1 = beatsGen.next().value;
function *beats(){
var options = {
url: 'https://api.github.com/repos/dionoid/koa-request',
headers: { 'User-Agent': 'request' }
};
var response = yield request(options);
}
Когда я утешаю войти response1 это это то, что я получаю
respone from beats is function (callback) {
_request(uri, options, function (error, response, body) {
callback(error, response);
})
}
Я полагал response1 бы SomeType объекта, содержащего параметр тела обратного вызова не сама функция. Итак, почему я получаю функцию как генераторы .next(). Value?
Я новичок в генераторах и koa, поэтому я предполагаю, что я делаю глупую ошибку здесь.
Спасибо человеку. На самом деле не понимал какой-то основной «магии», которая происходила. Просто из любопытства, как бы вы порекомендовали модульное тестирование в koa. Я не смог бы запустить промежуточное программное обеспечение app.use просто из вызова функции .exports, что я сделал с выражением в проходе. –
Вы можете использовать [co-mocha] (https://github.com/blakeembrey/co-mocha) для тестирования генераторов. –