Skip to main content

httpserver

函数名函数描述/介绍
httpserver.LocalFileSystemServeLocalFileSystemServe 根据给定的 host 和 port 启动一个 http 服务用于访问本地文件系统 第一个参数为监听主机,第二个参数为监听端口,第三个参数为访问路径前缀,第四个参数为本地文件系统路径,接下来可以接收零个到多个选项函数,用于设置上下文,回调函数等
httpserver.ServeServe 根据给定的 host 和 port 启动一个 http 服务,第一个参数为监听主机,第二个参数为监听端口,接下来可以接收零个到多个选项函数,用于设置上下文,回调函数等
httpserver.contextcontext 用于设置 HTTP 服务器的上下文
httpserver.handlerhandler 用于设置 HTTP 服务器的回调函数,此函数会在每次收到请求时被调用 此函数的第一个参数为响应回复者结构体,第二个参数为 请求结构体,你可以调用第一个参数中的方法来设置响应头,响应体等
httpserver.tlsCertAndKeytlsCertAndKey 用于设置 HTTP服务器的 TLS 证书和密钥,第一个参数为证书,第二个参数为密钥,第三个参数为可选的 CA 证书 一般配合tls标准库使用

函数定义#

LocalFileSystemServe#

详细描述#

LocalFileSystemServe 根据给定的 host 和 port 启动一个 http 服务用于访问本地文件系统

第一个参数为监听主机,第二个参数为监听端口,第三个参数为访问路径前缀,第四个参数为本地文件系统路径,接下来可以接收零个到多个选项函数,用于设置上下文,回调函数等

Example:

err = httpserver.LocalFileSystemServe("127.0.0.1", 8888, "/static", "/var/www/static")

定义#

LocalFileSystemServe(host string, port int, prefix string, localPath string, opts ...HttpServerConfigOpt) error

参数#

参数名参数类型参数解释
hoststring
portint
prefixstring
localPathstring
opts...HttpServerConfigOpt

返回值#

返回值(顺序)返回值类型返回值解释
r1error

Serve#

详细描述#

Serve 根据给定的 host 和 port 启动一个 http 服务,第一个参数为监听主机,第二个参数为监听端口,接下来可以接收零个到多个选项函数,用于设置上下文,回调函数等

Example:

err = httpserver.Serve("127.0.0.1", 8888, httpserver.handler(func(rspWriter, req) { rspWriter.Write("Hello world") }))

定义#

Serve(host string, port int, opts ...HttpServerConfigOpt) error

参数#

参数名参数类型参数解释
hoststring
portint
opts...HttpServerConfigOpt

返回值#

返回值(顺序)返回值类型返回值解释
r1error

context#

详细描述#

context 用于设置 HTTP 服务器的上下文

Example:

ctx = context.New()err = httpserver.Serve("127.0.0.1", httpserver, http.context(ctx))

定义#

context(ctx context.Context) HttpServerConfigOpt

参数#

参数名参数类型参数解释
ctxcontext.Context

返回值#

返回值(顺序)返回值类型返回值解释
r1HttpServerConfigOpt

handler#

详细描述#

handler 用于设置 HTTP 服务器的回调函数,此函数会在每次收到请求时被调用

此函数的第一个参数为响应回复者结构体,第二个参数为 请求结构体,你可以调用第一个参数中的方法来设置响应头,响应体等

Example:

err = httpserver.Serve("127.0.0.1", 8888, httpserver.handler(func(rspWriter, req) { rspWriter.Write("Hello world") }))

定义#

handler(cb func(rsp http.ResponseWriter, req *http.Request)) HttpServerConfigOpt

参数#

参数名参数类型参数解释
cbfunc(rsp http.ResponseWriter, req *http.Request)

返回值#

返回值(顺序)返回值类型返回值解释
r1HttpServerConfigOpt

tlsCertAndKey#

详细描述#

tlsCertAndKey 用于设置 HTTP服务器的 TLS 证书和密钥,第一个参数为证书,第二个参数为密钥,第三个参数为可选的 CA 证书

一般配合tls标准库使用

Example:

ca, key, err = tls.GenerateRootCA("yaklang.io")cert, sKey, err = tls.SignServerCertAndKey(ca, key)err = httpserver.Serve("127.0.0.1", 8888, httpserver.tlsCertAndKey(cert, sKey))

定义#

tlsCertAndKey(crt any, key any, cas ...any) HttpServerConfigOpt

参数#

参数名参数类型参数解释
crtany
keyany
cas...any

返回值#

返回值(顺序)返回值类型返回值解释
r1HttpServerConfigOpt