我的应用程序使用 Oauthed Cloud Endpoints,并且在生产中运行良好。
我的问题是,在本地开发服务器上,我的 User 用户始终设置为example@example.com,即使我已经完成了通常的身份验证、访问代码等,并且拥有一个有效的身份验证用户。
我知道 example@example.com 在我让 oauth 正常工作之前测试 oauth 端点很有用,但由于我的应用程序正在工作,我宁愿在那里看到实际用户。
具体来说,我的端点方法是
@ApiMethod(name = "insertEmp"), etc
public Emp insertEmp(User user, Emp emp) {
System.out.println(user.getEmail()); // (A) log "appengine" email
System.out.println(OAuthServiceFactory.getOAuthService().getCurrentUser().getEmail(); // (B) log authed email
...
部署后,一切都很好,并且 (A) 和 (B) 都记录了经过身份验证的用户 (my.email@gmail.com)。
在我的本地开发服务器上进行测试时,(A)总是记录“example@example.com”,即使我已经完成了 Oauth 序列并且有一个有效的、经过身份验证的用户,并且(B)记录了 my.email@gmail.com。所以我可以做高保真测试,我需要用户是真正的认证用户。
所以简单来说,我如何让 (A) 和 (B) 相同?