BadKeyError:无效的字符串键填充错误

Cer*_*rzi 4 python google-app-engine

我正在使用标准的几行代码从http get请求中检索密钥并使用它来从数据存储区获取某些内容,但是我遇到了一个我之前没有遇到过的问题.这只发生在实时(已部署)版本上 - 在开发服务器上运行代码时没有问题.

代码段:

  imgId = self.request.args.get("img_id")
  imageInfo = db.get(imgId)
Run Code Online (Sandbox Code Playgroud)

一个错误的例子:

    BadKeyError: Invalid string key  ahFjeWJlcm5hdXRzcHJvamVjdHINCxIFSW1hZ2UY1oYDDA=. Details: Incorrect padding
Run Code Online (Sandbox Code Playgroud)

如果我在db.get之前记录imgId的值,那么它是正确的(没有从调试消息中附加"=").有谁知道这可能导致什么?

Sha*_*men 7

我在猜网址编码.尝试:

imgId = urllib.unquote(self.request.args.get("img_id"))
Run Code Online (Sandbox Code Playgroud)

也许是空格?
尝试:

imgId = urllib.unquote(self.request.args.get("img_id")).strip()
Run Code Online (Sandbox Code Playgroud)