我正在运行一个 web 应用程序,它检查用户是否使用 登录,如果是UserService,则向他们显示他们的主页,如果不是,则将他们重定向到登录屏幕。进入页面后,我希望能够AJAX在他们单击某些元素时更新特定部分。现在,我已经REST使用 Cloud Endpoints 在同一个 GAE 项目中编写了一个 API,它可以获取我想要的所有信息,因此本着 DRY 的精神,我宁愿使用自己的 API,也不愿编写新的 servlet 来处理这些请求。
问题是我需要生成一个OAuth令牌才能访问 API。我可以从 Google API JavaScript 客户端库轻松地做到这一点,但是我的用户需要重新验证其余 API,这不仅从用户体验的角度来看很糟糕,而且更重要的是在页面的 javascript 中公开了我的客户端 ID 并通过通过HTTP(非SSL)标头的令牌。
我看到的唯一选择是为每个请求编写一个 servlet 并进行重复工作。但从概念上讲,我已经登录到 Google,所以我应该能够访问 API。一个人通常是怎么做的?我想这一切都错了吗?