gpt4 book ai didi

python - 具有多个服务类别的云端点

转载 作者:太空狗 更新时间:2023-10-30 00:45:38 27 4
gpt4 key购买 nike

我开始使用 Google Cloud Endpoints,但在指定多个服务类时遇到了问题。知道如何让它工作吗?

ApiConfigurationError: Attempting to implement service myservice, version v1, with multiple classes that aren't compatible. See docstring for api() for examples how to implement a multi-class API.

这就是我创建端点服务器的方式。

AVAILABLE_SERVICES = [
FirstService,
SecondService
]

app = endpoints.api_server(AVAILABLE_SERVICES)

对于我正在做的每个服务类:

@endpoints.api(name='myservice', version='v1', description='MyService API')
class FirstService(remote.Service):
...

@endpoints.api(name='myservice', version='v1', description='MyService API')
class SecondService(remote.Service):
...

这些中的每一个都可以完美地单独工作,但我不确定在组合它们时如何让它们工作。

非常感谢。

最佳答案

正确的方法是创建一个api对象并使用collection

api_root = endpoints.api(name='myservice', version='v1', description='MyService API')

@api_root.collection(resource_name='first')
class FirstService(remote.Service):
...


@api_root.collection(resource_name='second')
class SecondService(remote.Service):
...

资源名称将被插入到方法名称的前面,以便您可以使用

  @endpoints.method(name='method', ...)
def MyMethod(self, request):
...

代替

  @endpoints.method(name='first.method', ...)
def MyMethod(self, request):
...

将其放入 API 服务器:

api_root 对象等同于用endpoints.api 装饰的remote.Service 类,因此您可以简单地将其包含在endpoints.api_server 列表。例如:

application = endpoints.api_server([api_root, ...])

关于python - 具有多个服务类别的云端点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16161488/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com