Получение «Обновление из-за 401» при попытке подключения с помощью remote_api

Я пытаюсь подключиться к производственному хранилищу данных, работающему в Google App Engine, на основе https://cloud.google.com/appengine/docs/python/tools/remoteapi#enabling_remote_api_access_in_your_app и AppEngine – Remote API, возвращающего 401 и слишком много-auth и GAE: remote_api и учетные данные по умолчанию приложения и другие.

Это мой код для подключения к хранилищу данных Google App Engine

try: import dev_appserver dev_appserver.fix_sys_path() except ImportError: print('Please make sure the App Engine SDK is in your PYTHONPATH.') raise from google.appengine.ext.remote_api import remote_api_stub import os class RemoteApi: @staticmethod def use_remote_datastore(): os.environ['GOOGLE_APPLICATION_CREDENTIALS'] = "my-appengine-default-service-account.json" project_id = 'myapp' project_address = '{}.appspot.com'.format(project_id) RemoteApi.connect2(project_address) @staticmethod def auth_func2(): return ('myuser@myemail.com','mypassword') @staticmethod def connect2(project_address): remote_api_stub.ConfigureRemoteApiForOAuth( project_address, '/_ah/remote_api', secure=True) 

Но я получаю ошибку

 NotSupportedOnThisPlatform 

Если я затем установил

 secure=False 

Я тогда получаю

  INFO 2016-10-01 23:35:32,727 client.py:546] Attempting refresh to obtain initial access_token .... File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/dummy_thread.py", line 73, in allocate_lock return LockType() RuntimeError: maximum recursion depth exceeded 

Я попытался запустить

 gcloud auth login 

и создание новой учетной записи службы, предлагаемой здесь. AppEngine – Remote API, возвращающий 401 и слишком много-auth

Любые идеи, что я делаю неправильно?

    One Solution collect form web for “Получение «Обновление из-за 401» при попытке подключения с помощью remote_api”

    Вы упомянули auth_func2, но не использовали его, в соответствии с обновлениями remote_api без этой информации каждый раз с помощью oauth-запроса соединение невозможно.

    измените свой метод connect2 и попробуйте это –

     @staticmethod def connect2(project_address): remote_api_stub.ConfigureRemoteApi(None, '/_ah/remote_api', auth_func2, project_address) 

    PS – Я предполагаю, что ваш project_address прав и без 'http: //'

    Python - лучший язык программирования в мире.