问题描述
|
当我引用WebOb Request的params参数时,元素突然从结尾弹出。那个或它被简化为一个元素。所引用的元素不是被淘汰的元素。
if req.str_params.has_key(\'method\'):
req.method = req.str_params.getone(\'method\')
在此行日志记录开始之前:
DEBUG:root:nestedMultiDict([(\'method\',\'put\'),(\'name\',\'some_name\')])
后:
DEBUG:root:nestedMultiDict([(\'method\',\'put\')])
我很茫然。
解决方法
这是因为您要设定
req.method
。 name=some_name
可能在请求的主体中,只要req.method == \'POST\'
就可以返回该参数。将方法更改为PUT时,您将阻止WebOb解析请求主体(请求主体应为实体,而不是HTML表单输入)。这是在获得属性ѭ6calculated时计算得出的,因此,通过保存对参数的引用,可以避免执行req.method检查。