簡體   English   中英

將元數據添加到 WSGIRequest 對象

[英]Add metadata to WSGIRequest object

我有 Django1.9 中間件類:

class MyMiddleware(object):

    def process_request(self, request):
        token = self._get_or_create_token(request)
        #request.context['token'] = token 

問題是:- 我想將令牌放入某種上下文以通過應用程序流傳遞它。 - 我避免將它放入請求會話中,因為它會導致額外的數據庫讀/寫。

你能建議我一些解決方案嗎?

您可以將任何屬性添加到HttpRequest ,因此您可以通過以下方式實現:

class MyMiddleware(object):

    def process_request(self, request):
        token = self._get_or_create_token(request)
        request.token = token

或者如果你真的想要某種context字典:

class MyMiddleware(object):

    def process_request(self, request):
        token = self._get_or_create_token(request)
        if not hasattr(request, 'context'):
            request.context = {}
        request.context['token'] = token

我有 Django1.9 中間件類。

文檔所述,自2017 年 4 月起不再支持 ,因此我強烈建議進行更新。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM