Google App Engine配置端点API [英] Google App Engine configuring Endpoints API

查看:150
本文介绍了Google App Engine配置端点API的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在配置Endpoints API时遇到问题.我使用的任何代码(无论是我自己的代码)还是Google的网站示例都因相同的追溯而失败

I have a problem configuring Endpoints API. Any code i use, from my own, to google's examples on site fail with the same traceback

WARNING  2016-11-01 06:16:48,279 client.py:229] no scheduler thread, scheduler.run() will be invoked by report(...)
Traceback (most recent call last):
File "/home/vladimir/projects/sb_fork/sb/lib/vendor/google/api/control/client.py", line 225, in start
self._thread.start()
File "/home/vladimir/sdk/google-cloud-sdk/platform/google_appengine/google/appengine/api/background_thread/background_thread.py", line 108, in start
start_new_background_thread(self.__bootstrap, ())
File "/home/vladimir/sdk/google-cloud-sdk/platform/google_appengine/google/appengine/api/background_thread/background_thread.py", line 87, in start_new_background_thread
raise ERROR_MAP[error.application_error](error.error_detail)
FrontendsNotSupported
INFO     2016-11-01 06:16:48,280 client.py:327] created a scheduler to control flushing
INFO     2016-11-01 06:16:48,280 client.py:330] scheduling initial check and flush
INFO     2016-11-01 06:16:48,288 client.py:804] Refreshing access_token
/home/vladimir/projects/sb_fork/sb/lib/vendor/urllib3/contrib/appengine.py:113: AppEnginePlatformWarning: urllib3 is using URLFetch on Google App Engine sandbox instead of sockets. To use sockets directly instead of URLFetch see https://urllib3.readthedocs.io/en/latest/contrib.html.
AppEnginePlatformWarning)
ERROR    2016-11-01 06:16:49,895 service_config.py:125] Fetching service config failed (status code 403)
ERROR    2016-11-01 06:16:49,896 wsgi.py:263] 
Traceback (most recent call last):
File "/home/vladimir/sdk/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 240, in Handle
handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
File "/home/vladimir/sdk/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 299, in _LoadHandler
handler, path, err = LoadObject(self._handler)
File "/home/vladimir/sdk/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 85, in LoadObject
obj = __import__(path[0])
File "/home/vladimir/projects/sb_fork/sb/main.py", line 27, in <module>
api_app = endpoints.api_server([SolarisAPI,], restricted=False)
File "/home/vladimir/projects/sb_fork/sb/lib/vendor/endpoints/apiserving.py", line 497, in api_server
controller)
File "/home/vladimir/projects/sb_fork/sb/lib/vendor/google/api/control/wsgi.py", line 77, in add_all
a_service = loader.load()
File "/home/vladimir/projects/sb_fork/sb/lib/vendor/google/api/control/service.py", line 110, in load
return self._load_func(**kw)
File "/home/vladimir/projects/sb_fork/sb/lib/vendor/google/api/config/service_config.py", line 78, in fetch_service_config
_log_and_raise(Exception, message_template.format(status_code))
File "/home/vladimir/projects/sb_fork/sb/lib/vendor/google/api/config/service_config.py", line 126, in _log_and_raise
raise exception_class(message)
Exception: Fetching service config failed (status code 403)
INFO     2016-11-01 06:16:49,913 module.py:788] default: "GET / HTTP/1.1" 500 -

我的app.yaml的配置类似于新的端点迁移到2.0"文档状态:

My app.yaml is configured like the new Endpoints Migrating to 2.0 document states:

- url: /_ah/api/.*
  script: api.solaris.api_app

并且main.py将API导入到应用中:

And main.py imports the API into the app:

api_app = endpoints.api_server([SolarisAPI,], restricted=False)

我在以下版本中使用Google Cloud SDK:

I use Google Cloud SDK with these versions:

Google Cloud SDK 132.0.0
app-engine-python 1.9.40
bq 2.0.24
bq-nix 2.0.24
core 2016.10.24
core-nix 2016.10.24
gcloud 
gsutil 4.22
gsutil-nix 4.22

推荐答案

要摆脱"FrontendsNotSupported",您需要使用"B *"实例类.

To get rid of the "FrontendsNotSupported" you need to use a "B*" instance class.

如果您按照

The error "Exception: Fetching service config failed" should be gone if you follow the steps in https://cloud.google.com/endpoints/docs/frameworks/python/quickstart-frameworks-python. As already pointed out by Brad, the section "OpenAPI configuration" and the resulting environment variables are required to make the service configuration work.

这篇关于Google App Engine配置端点API的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆