推荐答案
Koa 的响应 (Response) 对象常用的属性和方法包括:
属性
response.status
: 设置或获取 HTTP 响应状态码。response.message
: 设置或获取 HTTP 响应状态消息。response.body
: 设置或获取响应体内容。response.headers
: 设置或获取响应头。response.type
: 设置或获取响应内容的 MIME 类型。response.length
: 设置或获取响应体的长度。response.lastModified
: 设置或获取响应体的最后修改时间。response.etag
: 设置或获取响应体的 ETag。
方法
response.set(field, value)
: 设置响应头字段。response.append(field, value)
: 追加响应头字段。response.remove(field)
: 移除响应头字段。response.redirect(url, [alt])
: 重定向到指定的 URL。response.attachment([filename])
: 设置响应头为附件下载。response.is(types...)
: 检查响应类型是否匹配给定的类型。response.get(field)
: 获取响应头字段的值。
本题详细解读
属性详解
response.status
: 用于设置或获取 HTTP 响应的状态码。例如,response.status = 200
表示请求成功。response.message
: 用于设置或获取 HTTP 响应的状态消息。例如,response.message = 'OK'
。response.body
: 用于设置或获取响应体的内容。可以是字符串、Buffer、对象、流等。response.headers
: 用于设置或获取响应头。可以通过response.headers['Content-Type'] = 'application/json'
来设置响应头。response.type
: 用于设置或获取响应内容的 MIME 类型。例如,response.type = 'text/html'
。response.length
: 用于设置或获取响应体的长度。例如,response.length = 1024
。response.lastModified
: 用于设置或获取响应体的最后修改时间。例如,response.lastModified = new Date()
。response.etag
: 用于设置或获取响应体的 ETag。例如,response.etag = '12345'
。
方法详解
response.set(field, value)
: 用于设置响应头字段。例如,response.set('Content-Type', 'application/json')
。response.append(field, value)
: 用于追加响应头字段。例如,response.append('Set-Cookie', 'foo=bar')
。response.remove(field)
: 用于移除响应头字段。例如,response.remove('Content-Type')
。response.redirect(url, [alt])
: 用于重定向到指定的 URL。例如,response.redirect('/new-location')
。response.attachment([filename])
: 用于设置响应头为附件下载。例如,response.attachment('file.txt')
。response.is(types...)
: 用于检查响应类型是否匹配给定的类型。例如,response.is('json')
返回true
如果响应类型是 JSON。response.get(field)
: 用于获取响应头字段的值。例如,response.get('Content-Type')
返回application/json
。