请帮我创建HTTPS tornado服务器

import os, socket, ssl, pprint, tornado.ioloop, tornado.web, tornado.httpserver
from tornado.tcpserver import TCPServer

class getToken(tornado.web.RequestHandler):
    def get(self):
        self.write("hello")

application = tornado.web.Application([
    (r'/', getToken),
])

# implementation for SSL
http_server = tornado.httpserver.HTTPServer(application)

TCPServer(ssl_options={
    "certfile": os.path.join("/var/pyTest/keys/", "ca.csr"),
    "keyfile": os.path.join("/var/pyTest/keys/", "ca.key"),
})

if __name__ == '__main__':
    #http_server.listen(8888)
    http_server = TCPServer()
    http_server.listen(443)
    tornado.ioloop.IOLoop.instance().start()

HTTPS对我来说非常重要,请帮助我

推荐答案

不需要使用TCPServer.

try 以下内容:

import tornado.httpserver
import tornado.ioloop
import tornado.web

class getToken(tornado.web.RequestHandler):
    def get(self):
        self.write("hello")

application = tornado.web.Application([
    (r'/', getToken),
])

if __name__ == '__main__':
    http_server = tornado.httpserver.HTTPServer(application, ssl_options={
        "certfile": "/var/pyTest/keys/ca.csr",
        "keyfile": "/var/pyTest/keys/ca.key",
    })
    http_server.listen(443)
    tornado.ioloop.IOLoop.instance().start()

Python-3.x相关问答推荐

Numpy将3D数组的每个切片相乘以进行转置并对其求和

如何使用TensorFlow Keras子类化来构建和训练模型

文件名中的文件打开和撇号

无法使用Python发送带有参数和标头的POST请求

如何使用魔杖扭曲图像

可以在 Python 的上下文管理器中调用 sys.exit() 吗?

为什么 get_form 方法中小部件的更改没有反映 Django 管理站点中的更改

如何立即从asyncio.Task获取异常?

aiogram机器人中处理文本输入异常而不是按钮点击的回调函数.

Jupyter Notebook 拒绝打印一些字符串

找到操作系统的图片文件夹的 CLI

如何从脚本中提取 PDF 文档的标题以进行重命名?

预分配一个无列表

Seaborn 热图 colored颜色 条标签作为百分比

创建一个可旋转的 3D 地球

Python过滤器函数 - 单个结果

如何配置 Atom 以运行 Python3 脚本?

为什么`multiprocessing.Queue.get`这么慢?

警告:请使用 tensorflow/models 中的官方/mnist/dataset.py 等替代方案

print(... sep='', '\t' ) 是什么意思?