我有一个非 gae、gwt 应用程序,它有一个模块,允许用户通过 google docs api 在线创建文档。
为此,我首先要求用户输入文档的名称和类型,然后使用给定的参数通过 google docs api 创建一个新文档,并且该 servlet 的 onSucces 部分返回编辑链接,该链接用于客户端打开一个新的页面来编辑创建的文档。
问题是,每次我尝试打开该 editLink 用户时都必须输入登录信息。为了解决这个问题,我尝试使用谷歌客户端登录,但我认为我完全迷路了。
首先我有用户的用户名和密码,可以直接使用它们,搜索后我尝试了一些通常返回这样和那样的令牌的示例。现在我应该用令牌做什么?它如何用于完成登录过程或应该完全找到另一种登录方式?所有那些 oauth1、oauth2 等文档让我有点困惑。
这是我的步骤;
服务器端;
LinkedHashMap<String, String> hashMap = new LinkedHashMap<String, String>();
// Login
DocumentList docList = new DocumentList("document");
docList.login(ServletUtil.googleDocsLoginInfo().get("username"), ServletUtil.googleDocsLoginInfo().get("password"));
//Create document with a unique suffix
String docName= parameterName+ "-Created-" + new Date();
docList.createNew(docName, dosyaTur);
// Find the created document and store editLink
DocumentListFeed feed = docList.getDocsListFeed("all");
for (final DocumentListEntry entry : feed.getEntries()) {
if (entry.getTitle().getPlainText().equals(docName)) {
hashMap.put("editlink", entry.getDocumentLink().getHref());
}
}
return hashMap;
和客户端;
@Override
public void onSuccess(LinkedHashMap<String, String> result) {
String editLink = result.get("editlink");
Window.open(editLink,"newwindow","locationno");
}
感谢您的帮助。