会话标题太大会导致Flask应用

时间:2018-03-27 21:13:22

标签: python session flask werkzeug

我正在使用在Python 3.6.5上运行的Flask 0.12.2。

当我运行应用程序时,程序执行的第一件事是检查会话中是否存储了某些内容(使用flask会话)。 还有一个函数可以识别调用intent的东西是'RelationshipQuestion',当你第一次运行应用程序时,会话中没有任何内容存储,但当它进入'RelationshipQuestion'时,我会在会话中设置'intent',如下所示:

session['intent'] = "RelationshipQuestion"

我将session ['intent']用于其他情况并且它工作正常,但是在这种情况下,虽然应用程序正确地返回内容但是我得到了这个警告:

    UserWarning: The "b'session'" cookie is too large: the value was 14708
bytes but the header required 26 extra bytes. The final size was 14734 bytes but
the limit is 4093 bytes. Browsers may silently ignore cookies larger than this.
samesite=samesite

对于会话中“意图”的其他部分,我没有得到这个警告 我已经检查了此时存储的所有密钥的会话大小,其中包含:

tamanio= 0
for key in session:
    tamanio+= getsizeof(session[key])

,大小是:

365 bytes
之后我检查是否:

'intent' in session and session['intent'] == "RelationshipQuestion"

并且由于它无法识别任何['intent'],我收到此错误:

raise ValueError('View function did not return a response')
ValueError: View function did not return a response

已经检查过没有删除会话['intent'],这对其他会话['intent'] s来说非常合适

会话标题如何如此之大?有没有更好的方法来检查标题大小? 可能是会话以某种方式填满了标题,这就是为什么它不存储意图?

此警告仅针对此特定情况,但所有其他情况都完美无缺(并且它们以相同的方式构建), 在这种情况下,我只收到此警告和错误

0 个答案:

没有答案