Google drive api 使用谷歌驱动器API的DrEdit Python示例时出现错误500

Google drive api 使用谷歌驱动器API的DrEdit Python示例时出现错误500,google-drive-api,Google Drive Api,我尝试将DrEdit的Python版本(在GAE中)放到网上 现在,从drive.google.com使用时,它可以正常工作,但从.appspot.com地址访问它会产生: Traceback (most recent call last): File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/webapp/_webapp25.py", line 701, in __call__ handler.

我尝试将DrEdit的Python版本(在GAE中)放到网上

现在,从drive.google.com使用时,它可以正常工作,但从.appspot.com地址访问它会产生:

Traceback (most recent call last):
  File "/base/python_runtime/python_lib/versions/1/google/appengine/ext/webapp/_webapp25.py", line 701, in __call__
    handler.get(*groups)
  File "/base/data/home/apps/s~driveedit/1.358524704843584683/main.py", line 282, in get
    drive_state = DriveState.FromRequest(self.request)
  File "/base/data/home/apps/s~driveedit/1.358524704843584683/main.py", line 120, in FromRequest
    return DriveState(request.get('state'))
  File "/base/data/home/apps/s~driveedit/1.358524704843584683/main.py", line 106, in __init__
    state_data = json.loads(state)
  File "/base/python_runtime/python_lib/versions/1/simplejson/__init__.py", line 388, in loads
    return _default_decoder.decode(s)
  File "/base/python_runtime/python_lib/versions/1/simplejson/decoder.py", line 402, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/base/python_runtime/python_lib/versions/1/simplejson/decoder.py", line 420, in raw_decode
    raise JSONDecodeError("No JSON object could be decoded", s, idx)
JSONDecodeError: No JSON object could be decoded: line 1 column 0 (char 0)
当我在FromRequest函数中添加“print request.get('state')”时,我得到:

Status: 500 Internal Server Error Content-Type: text/html; charset=utf-8 Cache-Control: no-cache Set-Cookie: userid=MTE2MDU1NTY3NjYxNTUzNzA2MTg2|1335608904|67eb86b0a74414014c05c4085832522f16f322f1; expires=Mon, 28 May 2012 10:28:24 GMT; Path=/ Expires: Fri, 01 Jan 1990 00:00:00 GMT Content-Length: 1206

要解决此问题,我可以看什么?

您应该修改DriveState以处理此问题,如下所示:

class DriveState(object):
  """Store state provided by Drive."""

  def __init__(self, state):
    """Create a new instance of drive state.

    Parse and load the JSON state parameter.

    Args:
      state: State query parameter as a string.
    """
    if state:
      state_data = json.loads(state)
      self.action = state_data['action']
      self.ids = map(str, state_data.get('ids', []))
    else:
      self.action = 'create'
      self.ids = []
我将更新示例代码以反映这一点

编辑:在中更新