tsw.jstsw.js

#全局变量

加载TSW内置模块

plug用来加载server内置模块,用法同require(id)

const logger = plug('logger');
const ajax = plug('ajax');
const config = plug('config');

上下文对象context

  • 特性

    1. 供TSW内部使用,生命周期与request绑定
    2. context 等价与 global.context
    3. 同一个request生命周期内只能访问自己的context对象
  • context

    • context.window -- window对象
    • context.autoParseBody -- booleanfalse时可关闭TSW自带的body解析
      • 设置时机 -- config.router.name()

上下文对象window

  • 特性

    1. 供业务使用,生命周期与request绑定
    2. window 等价与 global.window
    3. 同一个request生命周期内只能访问自己的window对象
  • window

    • window.disable() -- 禁用全局变量window
      • 禁用后,可以通过 context.window来访问window
    • window.enable() -- 启用全局变量window
    • window.onerror = fn -- 定制错误页
    • window.response -- response原始对象
    • window.request -- request原始对象
      • request.cookies -- cookie的解析结果
      • request.REQUEST -- request.url的解析结果
      • request.params -- 默认值{}
      • request.GET -- GET参数
      • request.POST -- POST参数
        • application/x-www-form-urlencoded -- 自动解析,字符集UTF-8
        • application/json -- 自动解析,字符集UTF-8
        • multipart/form-data -- 因涉及二进制流式收包,不会自动解析
      • request.param(key,[defaultValue])
        • 按照优先级params > GET > POST > defaultValue返回非null
    • window.websocket -- 触发message事件的websocket对象,详情查看websocket对象

当前核CPU使用率

  • cpuUsed
    • 取值范围:0-100
    • 更新周期:5秒

其它

  • TSW_HTTP_WORKER_PORT
    • 当前worker对应的私有端口,可用于websocket转发消息等场景