Java OAuth:使用Facebook SSO在google应用程序引擎上验证Android用户

Java OAuth:使用Facebook SSO在google应用程序引擎上验证Android用户,java,google-app-engine,authentication,single-sign-on,facebook-oauth,Java,Google App Engine,Authentication,Single Sign On,Facebook Oauth,我正在尝试在我的Android应用程序上实现facebook SSO。一旦用户使用facebook登录应用程序,他将调用运行在谷歌应用程序引擎(GAE)上的我的web服务。目前,我可以在我的android应用程序上从facebook获得access_令牌。然后我将这个访问令牌作为cookie添加到对GAE的http请求中。但我不确定如何在GAE上使用cookie对来自用户的请求进行身份验证。目前我正在尝试:- User user = OAuthServiceFactory.getOAuthSer

我正在尝试在我的Android应用程序上实现facebook SSO。一旦用户使用facebook登录应用程序,他将调用运行在谷歌应用程序引擎(GAE)上的我的web服务。目前,我可以在我的android应用程序上从facebook获得access_令牌。然后我将这个访问令牌作为cookie添加到对GAE的http请求中。但我不确定如何在GAE上使用cookie对来自用户的请求进行身份验证。目前我正在尝试:-

User user = OAuthServiceFactory.getOAuthService().getCurrentUser();
String email = user.getEmail();
但我的GAE web服务引发了以下异常:-

org.restlet.resource.UniformResource doCatch: Exception or error caught in resource
com.google.appengine.api.oauth.InvalidOAuthParametersException
这是验证用户身份的正确方法吗?如果是,那么我在这里遗漏了什么导致了这个异常


谢谢你的帮助

这是失败的,因为您没有使用OAuth。您正在获取Facebook connect身份验证令牌(该令牌也不使用OAuth),并将其附加到您向应用程序引擎应用程序发出的请求中


如果您想在应用程序中使用OAuth,则需要通过应用程序引擎应用程序的身份验证。如果您想重用您的Facebook凭据,您必须使用Facebook提供的任何API来验证身份验证令牌(如果有),而不是OAuth API。

这是失败的,因为您没有使用OAuth。您正在获取Facebook connect身份验证令牌(该令牌也不使用OAuth),并将其附加到您向应用程序引擎应用程序发出的请求中


如果您想在应用程序中使用OAuth,则需要通过应用程序引擎应用程序的身份验证。如果您想重用您的Facebook凭据,您必须使用Facebook提供的任何API来验证身份验证令牌(如果有),而不是OAuth API。

谢谢!事实上,我是按照这里提到的说明来使用Facebook SSO的:。根据以下facebook博客文章,SSO使用OAuth:。我错过什么了吗?谢谢尼克!事实上,我是按照这里提到的说明来使用Facebook SSO的:。根据以下facebook博客文章,SSO使用OAuth:。我是不是遗漏了什么?