• 首页
  • 电影
  • Js
  • 前端
  • 新旅
  • 奇技
  • 网安
  • 歌单
  • 关于
  • 搜索
  • 夜间模式
    ©2013-2025  成长小破站 Theme by OneBlog
    搜索
    标签
    # css # js # uniapp # ps # chrome # 小程序 # javascript # 布局 # typecho # 激活码
  • 首页>
  • Javascript>
  • 正文
  • ctx.query和ctx.request.body

    2024年08月03日 771 阅读 0 评论 1294 字

    在 Egg.js 和 Koa.js 中,ctx 是上下文对象(Context),它是连接请求和响应的核心对象。ctx 对象包含了处理请求所需的所有信息,包括请求和响应数据。下面是 ctx 对象的一些主要属性和方法:

    ctx 主要属性和方法

    请求相关

    ctx.request: 包含了请求的信息,如请求体、查询字符串等。
    ctx.method: 请求方法(例如 'GET', 'POST')。
    ctx.url: 请求的完整 URL。
    ctx.path: 请求路径。
    ctx.query: 查询字符串对象,如 { id: '123', name: 'John' }。
    ctx.querystring: 查询字符串,如 'id=123&name=John'。
    ctx.header: 请求头对象。
    ctx.headers: 同 ctx.header。
    ctx.body: 请求体,对于 POST 请求,这里通常包含了请求的数据。
    ctx.params: 路由参数对象。
    ctx.state: 用户可以在中间件间共享的状态对象。
    
    # 响应相关
    ctx.status: HTTP 状态码。
    ctx.body: 响应体,可以是字符串、Buffer 或对象。
    ctx.message: 响应消息。
    ctx.type: 响应的 MIME 类型。
    ctx.set(name, value): 设置响应头。
    ctx.get(name): 获取响应头。
    ctx.headerSent: 是否已经发送了响应头。
    ctx.length: 响应体的长度,如果是 Buffer 或 Stream。

    状态管理

    ctx.cookies: Cookie 操作工具,可以设置和获取 Cookie。
    ctx.session: 会话管理工具,用于管理用户的会话状态。

    错误处理

    ctx.throw(status, message, properties): 抛出一个错误,并设置响应状态码。
    ctx.onerror(error): 错误处理中间件。

    中间件控制

    ctx.next(): 调用下一个中间件。
    ctx.app: 当前应用实例。
    ctx.state: 可以用来在中间件之间传递数据。

    其他

    ctx.throw(status, message, properties): 抛出一个错误。
    ctx.redirect(url): 重定向到指定的 URL。
    ctx.assert(condition, status, message): 断言条件,不满足则抛出错误。
    ctx.attachment(filename): 设置 Content-Disposition 为 attachment,用于下载文件。
    本文著作权归作者 [ admin ] 享有,未经作者书面授权,禁止转载,封面图片来源于 [ 互联网 ] ,本文仅供个人学习、研究和欣赏使用。如有异议,请联系博主及时处理。
    ctx
    — END —
    首页电影Js前端新旅奇技网安歌单关于
    Copyright©2013-2025  All Rights Reserved.  Load:0.032 s
    豫公网安备41050202000235   豫ICP备18019224号-2
    Theme by OneBlog V3.6.4
    夜间模式

    开源不易,请尊重作者版权,保留基本的版权信息。