如何修复 Google Cloud Endpoints 上的 OpenAPI 文档生成?
How do I fix OpenAPI document generation on Google Cloud Endpoints?
我正在完成教程:'Getting Started with Cloud Endpoints Frameworks on App Engine Standard'。
https://cloud.google.com/endpoints/docs/frameworks/python/get-started-frameworks-python
在 'Generating the OpenAPI document' 部分的第二步 运行 将 'MY_PROJECT_ID' 替换为我的项目 ID 后的命令:
python lib/endpoints/endpointscfg.py get_openapi_spec main.EchoApi --hostname [MY_PROJECT_ID].appspot.com
我收到以下错误:
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.
有人知道如何解决这个问题吗?
感谢使用 Cloud Endpoints Frameworks。
这是框架版本 4.7.0 中引入的错误。我已经打开 https://github.com/cloudendpoints/endpoints-python/issues/184 进行跟踪,并会尽快修复。
我正在完成教程:'Getting Started with Cloud Endpoints Frameworks on App Engine Standard'。 https://cloud.google.com/endpoints/docs/frameworks/python/get-started-frameworks-python
在 'Generating the OpenAPI document' 部分的第二步 运行 将 'MY_PROJECT_ID' 替换为我的项目 ID 后的命令:
python lib/endpoints/endpointscfg.py get_openapi_spec main.EchoApi --hostname [MY_PROJECT_ID].appspot.com
我收到以下错误:
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.
有人知道如何解决这个问题吗?
感谢使用 Cloud Endpoints Frameworks。
这是框架版本 4.7.0 中引入的错误。我已经打开 https://github.com/cloudendpoints/endpoints-python/issues/184 进行跟踪,并会尽快修复。