从Google Cloud Endpoint访问UserService

时间:2013-04-29 21:05:11

标签: google-app-engine google-cloud-endpoints

我正在使用Cloud Endpoint开发Google App Engine应用。 我的应用使用OpenID来验证用户身份。 一旦用户登录,在同一会话中就会调用端点。 在端点代码中,我想访问当前登录用户的用户服务。 这适用于开发服务器,但在部署到Google之后,userService将null返回到getCurrentUser()调用。

我可以在云端点执行期间获取当前登录用户吗?

1 个答案:

答案 0 :(得分:3)

您不能在Endpoint方法中使用UserService(至少不能通过/_ah/api调用)。在端点中获取当前用户是通过方法签名中的注入完成的,例如:

public Score insert(Score score, User user)

User对象将填充以下任一项:有效用户对象(如果发送到请求中的令牌有效)或null(如果没有)。

我不确定你的本地测试是如何成功的,但我所描述的是预期的行为。