Запуск Google App Engine локально в режиме отладки - PullRequest
0 голосов
/ 31 августа 2018

У меня появляется эта ошибка при локальной загрузке приложения в режиме отладки.

Traceback (most recent call last):
File "/usr/lib/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 240, in Handle
  handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
File "/usr/lib/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 299, in _LoadHandler
  handler, path, err = LoadObject(self._handler)
File "/usr/lib/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 85, in LoadObject
  obj = _import_(path[0])
File "/home/ubuntu/Downloads/ndvi-time-series/server.py", line 51, in <module>
  import firebase_admin
File "/home/ubuntu/Downloads/ndvi-time-series/lib/firebase_admin/_init_.py", line 23, in <module>
  from firebase_admin import credentials
File "/home/ubuntu/Downloads/ndvi-time-series/lib/firebase_admin/credentials.py", line 20, in <module>
  import google.auth
File "/usr/lib/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/python/runtime/sandbox.py", line 1149, in load_module
  raise ImportError('No module named %s' % fullname)
ImportError: No module named google.auth

Я пытался отследить проблему, но понятия не имею, что пошло не так.

Может ли кто-нибудь дать мне некоторое просвещение и помочь мне узнать, как я могу найти источник проблемы?

Спасибо

Надстройка на:

После получения совета, который прокомментировал саамский ислам, мне неоднократно предлагалось подтвердить подлинность earthengine, что я сделал до того, как начал запускать 'dev_appserver.py app.yaml'

Ошибка, которую я получил:

ERROR    2018-09-04 06:51:31,938 wsgi.py:263] 
Traceback (most recent call last):
File "/usr/lib/google-cloud- 
sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 240, 
in Handle
handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
File "/usr/lib/google-cloud- 
sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 299, 
in _LoadHandler
handler, path, err = LoadObject(self._handler)
File "/usr/lib/google-cloud- 
sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 85, in 
LoadObject
obj = _import_(path[0])
File "/home/ubuntu/Downloads/ndvi-time-series/server.py", line 90, in 
<module>
ee.Initialize()
File "/home/ubuntu/Downloads/ndvi-time-series/lib/ee/_init_.py", line 93, in 
Initialize
credentials = _GetPersistentCredentials()
File "/home/ubuntu/Downloads/ndvi-time-series/lib/ee/_helpers.py", line 40, 
in 
_GetPersistentCredentials
raise EEException('Please authorize access to your Earth Engine account '
EEException: Please authorize access to your Earth Engine account by running

earthengine authenticate

in your command line, and then retry.
INFO     2018-09-04 06:51:31,961 module.py:880] default: "GET / HTTP/1.1" 500 -
INFO     2018-09-04 06:51:32,458 instance.py:294] Instance PID: 31367

1 Ответ

0 голосов
/ 03 сентября 2018

Если вы проверите конец полученного сообщения об ошибке, вы увидите следующую строку «ImportError: нет модуля с именем google.auth». Это означает, что путь к местоположению модуля не найден. Ожидается, что модуль google.auth и модуль firebase_admin будут расположены в расположении по умолчанию пакета google. Вы можете указать отладчику найти пакет Google, указав путь к каталогу в appengine_config.py. Таким образом, отладчик сможет найти местоположение пакета и не будет отображать ошибку ImportError. Чтобы изменить местоположение, в котором нужно найти пакет Google и указать каталог, попробуйте добавить следующие командные строки в файл appengine_config.py.

#appengine_config.py
import os
import google
from google.appengine.ext import vendor

lib_directory = os.path.dirname(__file__) + '/lib'

# Change where to find the google package (point to the lib/ directory)
google.__path__ = [os.path.join(lib_directory, 'google')] + google.__path__

# Add any libraries and install it in the "lib" folder.
vendor.add(lib_directory)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...