Object 内置对象

对象 HttpServer

http 服务器对象

http 服务器对象是将 TcpServerHttpHandler 组合封装的对象,方便快速搭建服务器,逻辑上相当于:

1 2 3
var svr = new net.TcpServer(addr, port, new http.Handler(function(req) { ... }));

创建方法:

1 2 3 4
var http = require("http"); var svr = new http.Server(80, function(req) { ... });

继承关系

构造函数

HttpServer

HttpServer 构造函数,在所有本机地址侦听

1 2
new HttpServer(Integer port, Handler hdlr);

调用参数:

  • port: Integer, 指定 http 服务器侦听端口
  • hdlr: Handler, http 内置消息处理器,处理函数,链式处理数组,路由对象,详见 mq.Handler

HttpServer 构造函数

1 2 3
new HttpServer(String addr, Integer port, Handler hdlr);

调用参数:

  • addr: String, 指定 http 服务器侦听地址,为 "" 则在本机所有地址侦听
  • port: Integer, 指定 http 服务器侦听端口
  • hdlr: Handler, http 内置消息处理器,处理函数,链式处理数组,路由对象,详见 mq.Handler

成员属性

maxHeadersCount

Integer, 查询和设置最大请求头个数,缺省为 128

1
Integer HttpServer.maxHeadersCount;

maxBodySize

Integer, 查询和设置 body 最大尺寸,以 MB 为单位,缺省为 64

1
Integer HttpServer.maxBodySize;

serverName

String, 查询和设置服务器名称,缺省为:fibjs/0.x.0

1
String HttpServer.serverName;

socket

Socket, 服务器当前侦听的 Socket 对象

1
readonly Socket HttpServer.socket;

handler

Handler, 服务器当前事件处理接口对象

1
Handler HttpServer.handler;

成员函数

enableCrossOrigin

允许跨域请求

1
HttpServer.enableCrossOrigin(String allowHeaders = "Content-Type");

调用参数:

  • allowHeaders: String, 指定接受的 http 头字段

start

启动当前服务器

1
HttpServer.start();

stop

关闭 socket中止正在运行的服务器

1
HttpServer.stop() async;

toString

返回对象的字符串表示,一般返回 "[Native Object]",对象可以根据自己的特性重新实现

1
String HttpServer.toString();

返回结果:

  • String, 返回对象的字符串表示

toJSON

返回对象的 JSON 格式表示,一般返回对象定义的可读属性集合

1
Value HttpServer.toJSON(String key = "");

调用参数:

  • key: String, 未使用

返回结果:

  • Value, 返回包含可 JSON 序列化的值