How do I fix OpenAPI document generation on Google Cloud Endpoints?

笑着哭i 提交于 2019-12-11 19:47:34

问题


I am working through the tutorial: 'Getting Started with Cloud Endpoints Frameworks on App Engine Standard'. https://cloud.google.com/endpoints/docs/frameworks/python/get-started-frameworks-python

On step two of the 'Generating the OpenAPI document' section when running the command after having replaced 'MY_PROJECT_ID' with my project ID:

python lib/endpoints/endpointscfg.py get_openapi_spec main.EchoApi --hostname [MY_PROJECT_ID].appspot.com

I get the following error:

Traceback (most recent call last):
  File "lib/endpoints/endpointscfg.py", line 31, in <module>
    main(sys.argv)
  File "/home/samuel_lessing/python-docs-samples/appengine/standard/endpoints-frameworks-v2/echo/lib/endpoints/_endpointscfg_impl.py", line 617, in main
    args.callback(args)
  File "/home/samuel_lessing/python-docs-samples/appengine/standard/endpoints-frameworks-v2/echo/lib/endpoints/_endpointscfg_impl.py", line 465, in _GenOpenApiSpecCallback
    x_google_api_name=args.x_google_api_name)
  File "/home/samuel_lessing/python-docs-samples/appengine/standard/endpoints-frameworks-v2/echo/lib/endpoints/_endpointscfg_impl.py", line 308, in _GenOpenApiSpec
    x_google_api_name=x_google_api_name)
  File "/home/samuel_lessing/python-docs-samples/appengine/standard/endpoints-frameworks-v2/echo/lib/endpoints/_endpointscfg_impl.py", line 216, in GenApiConfig
    services, hostname=hostname, **additional_kwargs))
  File "/home/samuel_lessing/python-docs-samples/appengine/standard/endpoints-frameworks-v2/echo/lib/endpoints/openapi_generator.py", line 1064, in pretty_print_config_to_json
    descriptor = self.get_openapi_dict(services, hostname, x_google_api_name=x_google_api_name)
  File "/home/samuel_lessing/python-docs-samples/appengine/standard/endpoints-frameworks-v2/echo/lib/endpoints/openapi_generator.py", line 1050, in get_openapi_dict
    return self.__api_openapi_descriptor(services, hostname=hostname, x_google_api_name=x_google_api_name)
  File "/home/samuel_lessing/python-docs-samples/appengine/standard/endpoints-frameworks-v2/echo/lib/endpoints/openapi_generator.py", line 951, in __api_openapi_descriptor
    security_definitions)
  File "/home/samuel_lessing/python-docs-samples/appengine/standard/endpoints-frameworks-v2/echo/lib/endpoints/openapi_generator.py", line 756, in __method_descriptor
    api_key_required=api_key_required)
  File "/home/samuel_lessing/python-docs-samples/appengine/standard/endpoints-frameworks-v2/echo/lib/endpoints/openapi_generator.py", line 791, in __security_descriptor
    'audiences must be a dict when third-party issuers '
endpoints.api_exceptions.ApiConfigurationError: audiences must be a dict when third-party issuers (auth0, firebase, etc) are in use.

Does anyone know how to address this?


回答1:


thanks for using Cloud Endpoints Frameworks.

This is a bug that was introduced in Frameworks version 4.7.0. I've opened https://github.com/cloudendpoints/endpoints-python/issues/184 to track it and will try to have a fix out soon.



来源:https://stackoverflow.com/questions/53455146/how-do-i-fix-openapi-document-generation-on-google-cloud-endpoints

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!