PySide6.QtHttpServer.QAbstractHttpServer¶
- class QAbstractHttpServer¶
用于实现HTTP服务器的API子类。更多…
继承者:
QHttpServer
概要¶
方法¶
def
__init__()
def
bind()
def
localServers()
def
serverPorts()
def
servers()
虚拟方法¶
def
handleRequest()
def
missingHandler()
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
继承这个类并重写
handleRequest()
和missingHandler()
来创建一个HTTP服务器。使用bind()
开始监听服务器上的所有传入连接。这是一个低级API,请参阅
QHttpServer
以获取用于实现HTTP服务器的高级API。创建一个带有父级
parent
的QAbstractHttpServer
实例。- bind(server)¶
- Parameters:
服务器 –
QLocalServer
- Return type:
布尔
将HTTP服务器绑定到给定的QLocalServer
server
,传输将通过该服务器进行。可以使用不同的server
实例多次调用此函数以处理多个连接。调用此函数后,每个_新_连接将由HTTP服务器处理和转发。
在调用此函数之前,用户有责任在
server
上调用QLocalServer::listen()。如果server
没有在监听,将不会发生任何事情,并且false
将被返回。如果
server
是 nullptr,则返回 false。如果成功,
server
将被附加到此 HTTP 服务器,并返回true
。另请参阅
listen()
- bind(server)
- Parameters:
服务器 –
QTcpServer
- Return type:
布尔
将HTTP服务器绑定到给定的TCP
server
上,传输将通过该服务器进行。可以多次调用此函数,使用不同的TCPserver
实例来处理多个连接和端口,例如同时处理SSL和非加密连接。调用此函数后,每个_新_连接将由HTTP服务器处理和转发。
在调用此函数之前,用户有责任在
server
上调用QTcpServer::listen()。如果server
没有在监听,将不会发生任何事情,并且false
将被返回。如果成功,
server
将被附加到此 HTTP 服务器,并返回true
。要允许使用HTTP 2,请绑定到已调用QSslConfiguration::setAllowedNextProtocols()的QSslServer,参数为
{ QSslConfiguration::ALPNProtocolHTTP2 }
。另请参阅
setAllowedNextProtocols()
- abstract handleRequest(request, responder)¶
- Parameters:
请求 –
QHttpServerRequest
responder –
QHttpServerResponder
- Return type:
布尔
重写此函数以处理每个传入的
request
,通过检查request
并将适当的响应发送回responder
。如果request
成功处理,则返回true
。如果此方法返回false
,之后将调用missingHandler()
。此函数必须在返回
true
之前移出responder
。- http2Configuration()¶
- Return type:
返回服务器的HTTP/2配置参数。
- localServers()¶
- Return type:
QLocalServer的列表
返回此HTTP服务器的本地服务器。
另请参阅
- abstract missingHandler(request, responder)¶
- Parameters:
请求 –
QHttpServerRequest
responder –
QHttpServerResponder
重写此函数以处理每个未被
handleRequest()
处理的传入request
。每当handleRequest()
返回false
,或者有WebSocket升级尝试且没有连接到newWebSocketConnection()
或没有匹配的WebSocket验证器时,都会调用此函数。request
和responder
参数与调用handleRequest()
时相同。另请参阅
handleRequest()
addWebSocketUpgradeVerifier()
- serverPorts()¶
- Return type:
.quint16的列表
返回此
QAbstractHttpServer
实例正在监听的端口列表。此函数具有与QObject::children相同的保证,最新添加的服务器是向量中的最后一个条目。
另请参阅
- servers()¶
- Return type:
QTcpServer的列表
返回此HTTP服务器的TCP服务器。
另请参阅
- setHttp2Configuration(configuration)¶
- Parameters:
配置 –
QHttp2Configuration
设置服务器的HTTP/2配置参数。
下一个HTTP/2连接将使用给定的
configuration
。另请参阅