Google Picker 似乎没有使用我们传递给它来显示的 OAuth 令牌。它始终使用用户浏览器上的第一个登录帐户。
我目前正在使用这样的东西构建选择器:
google_identity = { accessToken: 'oauth token', appId: '12345678',
email: 'example@example.com' };
picker = new google.picker.PickerBuilder().
addView(google.picker.ViewId.DOCUMENTS).
enableFeature(google.picker.Feature.MULTISELECT_ENABLED).
enableFeature(google.picker.Feature.NAV_HIDDEN).
setAppId(google_identity.appId).
setOAuthToken(google_identity.accessToken).
setCallback(pickerCallback).
build();
picker.setVisible(true);
我错过了什么吗?我使用的 App ID 是一串数字(这似乎是文档所暗示的),我很确定我的 OAuth 令牌可以访问 Google Drive,因为我在应用程序的其他地方使用令牌来操作 Google 上的文件驾驶。我还在构建选择器之前刷新了 OAuth 令牌,因此该令牌绝对是最新的。
我现在正在使用的一种解决方法是.setAuthUser(google_identity.email)
打电话,但这并不理想。