如何将http模块与bluebird协程一起使用?

How to use http module with bluebird coroutine?

如何在 bluebird 上使用 http。 以下代码 returns 无:

var Promise = require('bluebird');
var co = Promise.coroutine;
http = Promise.promisifyAll(require('http'));

co(function*(){
    var resp = yield http.get("http://i3.ytimg.com/vi/J---aiyznGQ/mqdefault.jpg").endAsync();
    console.log(JSON.stringify(resp.body));
})();

最好使用请求承诺

var Promise = require('bluebird');
var co = Promise.coroutine;
var rp = require('request-promise');

co(function*(){

   var resp = yield rp({uri: 'http://google.com'});

   console.log(JSON.stringify(resp));

})();