如何从python google app engine端点中的方法返回对象?
我正在尝试使用谷歌应用程序引擎运行我自己的身份验证,并使用来自 我在endpoints server类中编写了如下方法:如何从python google app engine端点中的方法返回对象?,python,google-app-engine,Python,Google App Engine,我正在尝试使用谷歌应用程序引擎运行我自己的身份验证,并使用来自 我在endpoints server类中编写了如下方法: @classmethod def get_user_from_headers(cls): try: user_id = cls.request_state.headers['user-id'] api_token = cls.request_state.headers['api-token'] user = ndb.
@classmethod
def get_user_from_headers(cls):
try:
user_id = cls.request_state.headers['user-id']
api_token = cls.request_state.headers['api-token']
user = ndb.Key(User, int(user_id)).get()
if user.apiToken != api_token:
raise endpoints.UnauthorizedException('Api Token error')
return user
except:
raise endpoints.UnauthorizedException('no user found')
其他地方:
@endpoints.method(containers.AddMemberToEventContainer, messages.EventsMessage, path='events/{event_id}',
http_method='POST', name='add.member.to.event')
def add_member_to_event(self, req):
user = self.get_user_from_headers()
user类只是扩展了ndb.Model,即user(ndb.Model)
但是当我返回用户时,python显示了一个错误,即用户不能用user=self.get\u user\u from\u headers()行调用
在GetHeaders方法中,我在返回用户之前尝试了日志记录,它如预期的那样显示在日志中。如何将用户从该方法传递回endpoints方法
编辑:
以下是实际错误:
TypeError: 'User' object is not callable
我不知道这样做是否正确,但我创建了一个可调用的模型类并扩展了它:
class CallableModel(ndb.Model)
def __call__(self):
return self
现在它起作用了 包括您得到的实际错误?