创建指定端口的回调服务器,优化快速关闭
(port: int)
| 178 | |
| 179 | |
| 180 | def create_callback_server(port: int) -> HTTPServer: |
| 181 | """创建指定端口的回调服务器,优化快速关闭""" |
| 182 | try: |
| 183 | # 服务器监听0.0.0.0 |
| 184 | server = HTTPServer(("0.0.0.0", port), AuthCallbackHandler) |
| 185 | |
| 186 | # 设置socket选项以支持快速关闭 |
| 187 | server.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) |
| 188 | # 设置较短的超时时间 |
| 189 | server.timeout = 1.0 |
| 190 | |
| 191 | log.info(f"创建OAuth回调服务器,监听端口: {port}") |
| 192 | return server |
| 193 | except OSError as e: |
| 194 | log.error(f"创建端口{port}的服务器失败: {e}") |
| 195 | raise |
| 196 | |
| 197 | |
| 198 | class AuthCallbackHandler(BaseHTTPRequestHandler): |
no test coverage detected