端点使用Google进行API身份验证

问题描述 投票:0回答:1

我想验证来自我的api的请求,以便它是一个有效的谷歌帐户。

@endpoints.api(name='echo', 
           version='v1',
           allowed_client_ids=[API_EXPLORER_CLIENT_ID,
                               "*****-************.apps.googleusercontent.com"],
           auth_level=AUTH_LEVEL.REQUIRED)
class EchoApi(remote.Service):
    @endpoints.method(
                    # This method takes a ResourceContainer defined above.
                    ECHO_RESOURCE,
                    # This method returns an Echo message.
                    EchoResponse,
                    path='echo',
                    http_method='POST',
                    name='echo',
                    api_key_required=True)
    def echo(self, request):
        print endpoints.get_current_user()
        print request
        output_content = ' '.join([request.content] * request.n)
        return EchoResponse(content=output_content)

以上是我实现的代码,如果我发送没有授权标头的请求,请求仍然到达后端

python google-app-engine google-cloud-endpoints endpoints
1个回答
0
投票

您必须检查get_current_user()是否返回None。

auth_level实际上并没有在此版本的Framework中执行任何操作。

© www.soinside.com 2019 - 2024. All rights reserved.