2017-11-02 17 views
1
class MsgConnection(tornado.websocket.WebSocketHandler): 
    def on_message(self,message): 
     session_id = self.get_cookie('session') 
     session = get_session_in_flask(session_id) 

コードの作成方法get_session_in_flaskセッションIDでFlaskでセッションを取得

+1

してください[MCVE]が含まれるように、[編集]。示されたコードはFlaskに関連して表示されません。 FlaskにはセッションIDの概念がありません。セッションは各要求でクライアントから送信されたCookieです。 'flask.session'にアクセスするだけです。 – davidism

答えて

1

def get_session_in_flask(secret_key, cookie_str): 
 
    import hashlib 
 
    from itsdangerous import URLSafeTimedSerializer 
 
    from flask.sessions import TaggedJSONSerializer 
 
    salt = 'cookie-session' 
 
    serializer = TaggedJSONSerializer() 
 
    signer_kwargs = { 
 
     'key_derivation': 'hmac', 
 
     'digest_method': hashlib.sha1 
 
    } 
 
    s = URLSafeTimedSerializer(secret_key, salt=salt, serializer=serializer, signer_kwargs=signer_kwargs) 
 
    return s.loads(cookie_str)

関連する問題