跳到主要内容

HttpServer

描述:

  代表一个HTTP服务器,可以处理请求和传输文件。

localIP

类型: 只读成员变量。

描述:

  服务器的本地IP地址。

签名:

const localIP: string

wsConnectionCount

类型: 只读成员变量。

描述:

  WebSocket连接的数量。

签名:

const wsConnectionCount: integer

wwwPath

类型: 成员变量。

描述:

  服务器的根静态文件目录的路径。

签名:

wwwPath: string

start

类型: 函数。

描述:

  在指定端口上启动HTTP服务器。

签名:

start: function(self: HttpServer, port: integer): boolean

参数:

参数名类型描述
portinteger要启动服务器的端口号。

返回值:

返回类型描述
boolean一个布尔值,表示服务器是否成功启动。

startWS

类型: 函数。

描述:

  在指定端口上启动WebSocket服务器。

签名:

startWS: function(self: HttpServer, port: integer): boolean

参数:

参数名类型描述
portinteger要启动服务器的端口号。

返回值:

返回类型描述
boolean一个布尔值,表示服务器是否成功启动。

post

类型: 函数。

描述:

  注册一个处理函数,用于处理POST请求。

签名:

post: function(
self: HttpServer,
pattern: string,
handler: function(Request): table
)

参数:

参数名类型描述
patternstring匹配请求的URL的模式。
handlerfunction匹配模式时要调用的处理函数。函数应返回一个包含可以序列化为JSON的响应数据的Lua表。

postSchedule

类型: 函数。

描述:

  注册一个处理函数,用于在协程中处理POST请求。

签名:

postSchedule: function(
self: HttpServer,
pattern: string,
handler: function(Request): table
)

参数:

参数名类型描述
patternstring要匹配的URL模式。
handlerfunction匹配模式时要调用的处理函数。函数应返回一个包含可以序列化为JSON的响应数据的字典。并且函数将在协程中运行。

upload

类型: 函数。

描述:

  注册一个处理函数,用于处理文件上传的多部分POST请求。

签名:

upload: function(
self: HttpServer,
pattern: string,
acceptHandler: function(req: Request, filename: string): (string | nil),
doneHandler: function(req: Request, filename: string): boolean
)

参数:

参数名类型描述
patternstring要匹配的URL模式。
acceptHandlerfunction匹配模式时要调用的处理函数。函数应返回要将文件保存为的文件名,或者返回 null 来拒绝文件。
doneHandlerfunction匹配模式时要调用的处理函数。函数应返回 true 来接受文件,或者返回 false 来拒绝文件。

stop

类型: 函数。

描述:

  停止服务器,包括已启动的HTTP服务器和WebSocket服务器。

签名:

stop: function(self: HttpServer)