Tag: koa

为什么koa路由器发送404?

我正在使用koa-router,koa-views和sequelize。 数据来自数据库,但状态= 404。我做错了什么? router.get('/', function *() { var ctx = this; yield models.drivers.findAll({ where: { userId: ctx.passport.user.id } }).then(function(drivers) { ctx.render('driversSearch', { drivers: drivers }); }); });

Koa Authstream动与撰写

在expressjs中我有这个authentication函数。 基本上这只是一个将中间件组合成一个中间件的function。 从现在开始,我想从快递到koa,我怎样在koa做同样的事情呢? import compose from 'composable-middleware'; export function isAuthenticated() { return compose() // Validate JWT .use(function(req, res, next) { if (req.query && req.query.hasOwnProperty('access_token')) { req.headers.authorization = 'Bearer ' + req.query.access_token; } validateJwt(req, res, next); }) // Attach user to request .use(function(req, res, next) { User.findByIdAsync(req.user._id) .then(user => { if (!user) { return res.status(401).end(); } […]

我如何使用koa中的“http”模块?

我想在使用koajs框架的节点上使用http.request。 有什么办法可以像下面展示的那样使用它? var http = require('http'); var result = yield http.request(options);

拦截器在Node.js中

我试图在节点js中构build一个拦截器,但到目前为止,我没有得到它。 我想拦截器,捕捉每个请求,并添加一个自定义标题,从koa上下文恢复。 我的意思是,例如,如果您使用request-promise进行http请求,我想自动添加一个自定义标题并将其传播到命运。 有人知道吗?

Koa:如何获得cookie的失效date

我用ctx.cookie.set('jwt', 'abcd', { expires: new Date(xxx) })设置了一个cookie,但是现在我需要再次获取该cookie并获取它的过期date,我怎么能去做? 我可以看到的所有选项ctx.cookie.get('jwt')只获取cookie的值,而不是它的任何选项。

我如何在nodejs的foreach循环中编写顺序执行?

我是nodejs的新手。 请帮助我如何将数据保存在foreach循环中,并将响应发回给controller.it返回false不返回对象。 提前致谢 这是我的代码 var rideStatus = require('../models/ridestatus'); module.exports = { invite_ride: function* (body) { var saved = false; var receivers = body.uids; receivers = receivers.split(',').filter(function(n) { return n != 'null'; }); receivers.forEach(function* (n) { yield rideStatus.findOne( {$and: [{ride_id: body.rideid}, {receiver_id: receivers}]}, function(err, doc) { if (doc === null) { new rideStatus({ ride_id: body.rideid, invited_id: […]

file upload在KoaJS

我正尝试使用示例代码上传文件。 但它不工作。 在控制器中我写了代码 var parse = require('co-busboy'); var fs = require('fs'); var path = require('path'); var parts = parse(this); var part; while (part = yield parts) { var stream = fs.createWriteStream('/tmp/' + part.filename); part.pipe(stream); console.log('uploading %s -> %s', part.filename, stream.path); } 但是当我在控制台上传图片时,我只能获取新的上传位置。 但在新的位置图像不保存。 任何解决scheme 提前致谢, 尼克松

~~运营商的Javascript

我在一些Node.js Harmony代码中遇到了一个“this”关键字之前的运算符,特别是与Koa web框架一起工作。 示例代码如下: app.use(function *(){ var n = ~~this.cookies.get('view') + 1; this.cookies.set('view', n); this.body = n + ' views'; }); 一个常规的谷歌search没有出现,所以我很困惑。 我唯一可以肯定的是,它是该代码片段的function所必需的,因为代码在被移除时停止工作。 任何洞察力将赞赏与确定这个外星人运营商的目的。

在Koa中设置多个cookie头

我正尝试通过以下方式在我的客户端浏览器中清除两个Cookie: this.response.set('Set-Cookie', 'mycookie1=; Path=/; expires=Thu, 01 Jan 1970 00:00:00 GMT; ,mycookie1.sig=; Path=/; expires=Thu, 01 Jan 1970 00:00:00 GMT;'); 我似乎只能摆脱mycookie1而不是mycookie.sig 。

会话存储的用途是什么?

我正在使用koa和护照,因此我正在使用koa通用会话中间件来处理我的会话。 现在,与expressjs 会话中间件不同,文档中没有大的声明: 默认的服务器端会话存储器MemoryStore故意不是为生产环境而devise的。 假设koa通用会话的MemoryStore已准备好供生产使用,那么为什么我会使用一个重负载的会话存储,如mysql或mongodb来进行整天来来往往的会话呢? 什么额外的function会使用一个给我的记忆库不?