2010-12-21 47 views
0

我在写一个将要使用OAuth的GWT应用程序。 OAuth通过一个url传递给您的网站,并将其作为url参数的一部分与访问密钥一起提供给您的网站。我该如何实现一个GWT回调url?

我的问题是这样的:对于GWT应用程序,我如何允许将自定义URL粘贴/重定向到地址栏?从本质上讲,它将是一个服务器请求,它使用带有jsp的tomcat服务器简单,但是有没有一种方法可以使用纯粹的GWT实现来处理?

我可以想像,下面是更多钞票:

  • 编写部署与GWT项目
  • 存储访问键
  • 再次将用户重定向到我的GWT的主页面JSP页面应用程序

是否有更纯粹的方式来做到这一点与GWT?我可以直接调用RPC服务来完成这项任务吗?如果我调用RPC服务,我是否应该将用户重定向到主页面?我可以只实现我的GWT客户端代码,以便识别从url传递的自定义参数吗?

您认为最好的方法是什么?

回答

2

请参阅com.google.gwt.user.client.Window.Location.replace(String newUrl),但坏消息是您将失去所有内部历史记录。这是一个人的博客条目experiences with OAuth and his pure GWT solution。还有一个GWT example project that does OAuth

+0

这些都是尝试实施OAuth的人的链接。我正在使用抄写员为我做OAuth,但我仍然需要一个自定义处理程序来处理来自站点的身份验证回调。 – Kieveli 2010-12-22 14:39:19

0

我也遇到过这个问题。这里是我的解决方案:

调用RPC和

onSuccess() { 
} 

onFailure(){ // for example, don't have permission to see this page 
Window.Location.assign("login.html"); 
} 

不能发送RPC从(servlet的)重定向。