Tag: koa

科阿安全地处理错误?

Nodejs API指出… 由于JavaScript在JavaScript中的工作原理,几乎没有任何方法可以安全地“捡起你离开的地方”,而不会泄漏引用或创build其他某种不明确的状态。 然而,Koa捕获错误并避免退出nodejs进程。 什么使Koa安全地藐视这个build议?

Koa:koa-route和koa-mount之间有什么区别。 我应该什么时候使用每个?

我正在尝试使用Koa.js,并检出以下路由请求模块:1. koa-route 2. koa-mount 当我在谷歌检查他们的github页面/教程时,这些例子看起来几乎相似,只是细微的差别。 对于koa路线: var route = require('koa-route'); app.use(route.get('/', index)); //functions to handle the request function* index(){ this.body = "this should be home page!"; } 对于科阿芒: //syntax to add the route var mount = require('koa-mount'); var a = koa(); app.use(mount('/hello', a)); //functions to handle the request a.use(function *(next){ yield next; this.body = 'Hello'; […]

POST与koa(nodejs)

我一直烦恼地find只parsingJSON发送的例子。 我正在试图find一个POST来自一个表单的例子。 <form class="form-horizontal" role="form" action="/" method="post"> <input type="text" class="form-control" name="email" placeholder="your@email.here"> <input type="text" class="form-control" name="password" placeholder="password"> <button type="submit" class="btn btn-default">Sign in</button> </form> 正如你可以看到我有字段的email和password 。 我正在使用夸耀koa-router ,但这不工作的koa-router : .post('/', function* () { console.log(this.body.email); // <— undefined console.log(this.body.password); })

Koa-pg找不到模块页

嘿,所以我试图让Nodejs Koa与使用Koa-pg模块的postgres对话,但我不断收到'找不到模块pg'错误。 我试图按照koa-pg的例子,但已经短了…所以任何意见将如何进步,将不胜感激。 如果创build我的app.js文件如下所示: var koa = require('koa'); var route = require('koa-route'); var koaPg = require('koa-pg'); var roads = require('./controllers/roads'); var app = module.exports = koa(); app.use(route.get('/roads/bbox/', roads.bbox)); app.listen(3000); console.log('listening on port 3000'); 然后创build我的控制器文件如下: var credentials = require('../credentials.js'); var environment = credentials.dev; app.use(koaPg('postgres://' + environment.user + '@' + environment.host + ':' + environment.port + '/' […]

如何configurationkoa-router在任何一组路由之前运行公共代码?

我想添加一些function/module ,获取该目录下的任何匹配路线执行。 所以对于一组给定的路线: /module/ /module/page /module/things /module/things/:thingid 我想在/module路由器的代码在所有上述路线运行。 /module不渲染,它只是提取一些常见的数据并configuration视图上下文。 然后其他路线之一运行并呈现该页面。 这可能与koa路由器? 还是有更好的包装? 编辑:我想也许我必须做一个嵌套的路由器,并在嵌套之前添加中间件像这样: var subRouter = new Router(); subRouter.get('/', function *(next){ doSomething(); }); subRouter.get('/page', function *(next){ doSomething(); }); subRouter.get('/things', function *(next){ doSomething(); }); subRouter.get('/things/thingid', function *(next){ doSomething(); }); mainRouter.use('/module', function *(next) { doPreRouteSteps(); yield next; }, subRouter.routes() ); 似乎工作,但我不知道这是一个丑陋的黑客或什么。 如果有更好的方法,请告知。

Marko和Koajs:为什么我的asynchronous片段渲染不起作用?

我试图让渐进渲染在Marko和Koajs工作。 首先,我使用request-promise模块为JSON数据馈送做出承诺。 rp = require('request-promise') function getDataFeed() { var url = "http://api.dronestre.am/data"; var options = { url: url, headers: { 'User-Agent': 'request' }, }; rp(options).then(function(result) { var info = JSON.parse(result); return info.strike; }); }; 然后,我使用koa路由器和Marko加载一个模板,在这个模板中,数据以数据formsinput // router method to serve first visualization router.get('/first', function *() { let data = { strikes : getDataFeed() }; this.body […]

如何用Monk检索MongoDb集合标识

我试图用swig做一个非常简单的应用程序“todo应用程序”koajs,我已经成功地将数据插入Mongodb,在我的情况下,数据库的名称是'mytodos',收集是'todos'。 如何检索文档的“_id”? 我试过这样做: index.html(这列出了待办事项) <div class="todoListClass"> <p> <strong>Your todo list:</strong> {{todos.length}} {% for todo in todos%} <li>{{todo.text1}} <span> <a href="/todo/delete/{{todo._id}}">Delete</a></span></li> {%endfor%} </p> </div> 但我似乎无法得到我想要的结果。 它只是返回“[Object] [object]”。

用koa-routerredirectkoa中的嵌套路由

我如何使用koa-router做嵌套路由redirect? app.js: var router = require('koa-router')(); var route1 = require('./routes/route1'); var route2 = require('./routes/route2'); router.use('/route1', route1); router.use('/route2', route2); app.use(router.routes()); route1.js: var router = require('koa-router')(); router.all('/', function *() { router.redirect('/route2'); }); module.exports = router.routes(); route2.js: var router = require('koa-router')(); router.all('/', function *() { this.body = "route2"; }); 上面的代码在导航到/route1时导致以下错误: TypeError: Cannot read property '0' of undefined at […]

从节点,mysql,koa中获取数据

我想从我的MySQL数据库中使用Koa和mysql节点包得到一些数据。 我正在查看co-mysql ,但是自述文件build议直接使用thunkify 。 所以我做了以下几点: const query = thunkify(connection.query.bind(connection)); 这似乎工作,我现在可以做的: app.use(function * main() { const races = yield query( "SELECT * FROM `races` where '2016-01-19' between start_date and end_date" )(function(err, rows) { // rows is the data I need }); }); 但是,我无法find一种方法来将thunk中的行数据返回到我的种族variables中。 我logging它,并显示正确的数据,但是当我尝试将其传回时,它总是返回undefined。 我从callback中尝试了几个方法,但我似乎无法弄清楚: return rows生成yield rows (使callback生成器函数) return yield rows … 我经常得到: TypeError: You […]

node.js – koa:发电机不要下一步

我有一个简单的对象,我传递一个参数,然后我想find我的集合中的所有文件,并加盖它。 这是我的自定义对象: var db = require('../lib/db'); function Widget(n,l,c,o,t,p) { this.name = n; this.label = l; this.class = c; this.order = o; this.template = t; this.params = p; if(this.params != null) { var a = getValue(this.params); a.next(); } } function *getValue(p){ var Object = require("./sections"); console.log("1"); try { var objects = yield Object.find({}).exec(); } catch(err){ throw […]