1

ssl_options を使用してシンプルな tornado http サーバーを作成し、Telegram ボットの Web フックを設定しましたが、サーバーは "post" 要求を取得しませんでした。どのような問題が考えられますか?

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

class MainHandler(tornado.web.RequestHandler):
    def post(self):
        print('Post request')

    def get(self):
        print('Get request')
        self.write('<h1>Hello, World</h1>')

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

if __name__ == '__main__':
    http_server = tornado.httpserver.HTTPServer(application, ssl_options={
        'certfile': 'server.crt',
        'keyfile': 'server.key'
    })
    http_server.listen(443)
    tornado.ioloop.IOLoop.current().start()
4

1 に答える 1

2

自己署名 SSL 証明書を発行するときは、「共通名」が FQDN ( hostname -f) と一致していることを確認してください。

例:

$ openssl req -new -x509 -nodes -newkey rsa:1024 -keyout server.key -out server.crt -days 3650

使用している場合は、このスクリプトを実行して wget を使用して接続を試みるpython-telegram-btSSL ハンドシェイクをテストできます。

$ wget -O /dev/null https://$HOST:$PORT/

于 2016-05-29T03:56:59.007 に答える