使用GWT-Google Picker将图片上传到Google云端硬盘

时间:2014-03-11 17:09:51

标签: gwt google-drive-api google-picker

我正在尝试使用Google Picker用户界面将图片上传到Google云端硬盘。到目前为止,我没有成功。

这是我正在使用的代码:

private void onCreatePicker(ViewId viewId) {

    final Picker picker = PickerBuilder.create()                
            .setTitle("Subir imagen a Google Drive")
            .addView(viewId)
            .addView(DocsUploadView())
            .setLocale("es")                
            .setOAuthToken(token_oauth2)
            .setDeveloperKey(DEVELOPER_KEY)
            .setCallback(buildPickerCallback(viewId))
            .build();
    picker.setVisible(true);
  }

private JavaScriptObject DocsUploadView() {
    return com.ip.gae.gartla.shared.DocsUploadView.create();

}

我请求你帮助我可能会遗漏什么。

感谢您的时间,

此致

更新:我的应用范围似乎错了。为了生成正确的oAuth2Token,您必须声明要为其生成令牌的范围:

以下是我用来生成令牌的方法:

private void tokenOauth2() {
    AuthRequest req = new AuthRequest(AUTH_URL, CLIENT_ID)
    .withScopes(GOOGLE_DRIVE_SCOPE); // Can specify multiple scopes here

    Auth.get().login(req, new Callback<String, Throwable>() {
          @Override
          public void onSuccess(String token) {
            token_oauth2 = token;
          }
          @Override
          public void onFailure(Throwable caught) {
            // The authentication process failed for some reason, see caught.getMessage()
          }
        });
}

这是我正在使用的GOOGLE_DRIVE_SCOPE变量:

String GOOGLE_DRIVE_SCOPE = "https://www.googleapis.com/auth/drive";

所以,现在这对我有用。我已经附上了解决方案,所以如果有人发现它足够有趣。 : - )

0 个答案:

没有答案