gpt4 book ai didi

python - 在 Python3 Mockserver 中添加 https 重定向

转载 作者:太空宇宙 更新时间:2023-11-03 14:41:40 25 4
gpt4 key购买 nike

我们有这个模拟服务器现在正在服务 https://请求,如果我们删除 ssl 包装 (ssl.wrap_socket(myServer.socket,keyfile='key.pem',certfile= 'cert.pem', server_side =True),服务器只处理http://请求。有什么方法可以让这个服务器支持这两种请求。我们的目标是当服务器收到http://请求时,它会自动将其转换为https ://并处理请求。

在此先感谢您的支持

from http.server import HTTPServer, BaseHTTPRequestHandler
import ssl

class Mock(BaseHTTPRequestHandler):

-------------------
-------------------

def main():
global hostname, port
hostname = "127.0.0.1"
port = 8000
myServer = HTTPServer((hostname, port), Mock)
myServer.socket = ssl.wrap_socket(myServer.socket,keyfile='key.pem',certfile= 'cert.pem', server_side=True)
myServer.serve_forever()

if __name__ =="__main__":
main()

最佳答案

如果 HTTP 和 HTTPS 服务器需要不同的功能,那么让它们成为两个不同的实例是有意义的。为什么不创建第二个HTTPServer,它只是 HTTP,它只返回一个 302 状态,其中 Location header 指向 HTTPS 模拟服务器(但使用相同的路径)。

关于python - 在 Python3 Mockserver 中添加 https 重定向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42614800/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com