1

尝试在 appengine 应用程序中获取 GET 请求参数的值时出现以下错误。我们正在使用 Python 2.7 和 webapp2。有人可以帮助在这里找到问题。


错误:


Traceback (most recent call last):
  File "/base/data/home/apps/s~appname/10.002634982369462/foldername/filename.py", line 32, in get
    self.get_link()
  File "/base/data/home/apps/s~appname/10.002634982369462/foldername/filename.py", line 64, in get_link
    if not self.request.get('link'):
  File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 175, in get
    param_value = self.get_all(argument_name)
  File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webapp2-2.5.2/webapp2.py", line 212, in get_all
    param_value = self.params.getall(argument_name)
  File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webob-1.1.1/webob/multidict.py", line 327, in getall
    return map(self._decode_value, self.multi.getall(self._encode_key(key)))
  File "/base/data/home/runtimes/python27/python27_lib/versions/third_party/webob-1.1.1/webob/multidict.py", line 301, in _decode_value
    value = value.decode(self.encoding, self.errors)
  File "/base/data/home/runtimes/python27/python27_dist/lib/python2.7/encodings/utf_8.py", line 16, in decode
    return codecs.utf_8_decode(input, errors, True)
UnicodeDecodeError: 'utf8' codec can't decode byte 0x85 in position 23: invalid start byte

请求数据:


link=http%3A%2F%2Fprincesseblack.c%8513%2F10%2Fprincesse-black-au-cocktail-roots-magazine-n10%2F&id=335180657:1
4

1 回答 1

1

该字符%85被 url 解码为U+0085 UTF-8 控制字符,也称为NEL - 下一行。因此不能成为 URL 的一部分。

于 2013-10-23T07:02:48.593 回答