6.2KOA 数据请求 Request
2020-01-06 本文已影响0人
帶頭二哥
数据请求 Request
获取 Request 对象
router.get('/',async(ctx,next) => {
// 获取数据请求对象
let request = ctx.request
})
获取 url 参数
router.get('/:id',async(ctx,next) => {
// 获取数据请求对象
let request = ctx.request
// 获取 url 参数
let params = request.params
// ...
})
获取 Get 请求参数
router.get('/',async(ctx,next) => {
// 获取数据请求对象
let request = ctx.request
// 获取 get 请求参数
let query = request.query
// ...
})
获取 POST 请求参数
必须先安装第三方中间件
koa-bodyparser
用于解析 POST 请求的数据
npm install koa-bodyparser --save
在
app.js
中使用koa-bodyparser
中间件
const bodyParser = require('koa-bodyparser')
app.use(bodyParser())
处理
POST
请求
router.post('/',async (ctx,next) => {
// 获取数据请求对象
let request = ctx.request
// 获取 POST 请求参数
let body = request.body
// ...
})
获取其他信息
router.get('/', async (ctx,next) => {
// 获取数据请求对象
let request = ctx.request
// 获取请求头信息
console.log(request.headers) // 通过别名访问 ctx.headers
// 获取请求方式
console.log(request.method) // 通过别名访问 ctx.method
// 获取请求地址
console.log(request.url) // 通过别名访问 ctx.url
// ...
})
Request 别名
- ctx.header
- ctx.headers
- ctx.method
- ctx.method=
- ctx.url
- ctx.url=
- ctx.originalUrl
- ctx.origin
- ctx.href
- 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()