Koa 如何获取 Query 参数
routes/index.js
var router = require('koa-router')();
router.get('/', function *(next) {
console.log(this.request.query)
console.log(this.query)
yield this.render('index', {
title: 'Hello World Koa!'
});
});
module.exports = router;
访问 http://127.0.0.1:3000/?a=1
日志
<-- GET /?a=1
{ a: '1' }
{ a: '1' }
和 express 里获取 query 的方法是一样的,req.query
koa 里是
- this.request.query
- this.query
这里需要说明以下 this 上下文上有 request 和 response 2 个对象,每次写起来又比较麻烦
于是把 request 和 response 上的方法也丢给 this,这样就相当于 this 上有了对应 request 和 response 里的方法的别名(简写方式)
别名列表
Request aliases
以下访问器和别名与 Request 等价:
- ctx.header
- ctx.method
- ctx.method=
- ctx.url
- ctx.url=
- ctx.originalUrl
- ctx.path
- ctx.path=
- ctx.query
- ctx.query=
- ctx.querystring
- ctx.querystring=
- ctx.host
- ctx.hostname
- ctx.fresh
- ctx.stale
- ctx.socket
- ctx.protocol
- ctx.secure
- ctx.ip
- ctx.ips
- ctx.subdomains
- ctx.is()
- ctx.accepts()
- ctx.acceptsEncodings()
- ctx.acceptsCharsets()
- ctx.acceptsLanguages()
- ctx.get()
Response aliases
以下访问器和别名与 Response 等价:
- ctx.body
- ctx.body=
- ctx.status
- ctx.status=
- ctx.length=
- ctx.length
- ctx.type=
- ctx.type
- ctx.headerSent
- ctx.redirect()
- ctx.attachment()
- ctx.set()
- ctx.remove()
- ctx.lastModified=
- ctx.etag=
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
上一篇: Koa 路由写法说明
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论