Получить документ из учетной записи Google с помощью OAuth - PullRequest
0 голосов
/ 02 августа 2011

Мне нужно знать, как получить документы от конкретного пользователя, пользователь аутентифицируется с помощью ...

    UserService userService = UserServiceFactory.getUserService();
    User user = userService.getCurrentUser();

Когда пользователь проходит аутентификацию, мне нужно получить документы из Google Docs. Я знаю, что должен использовать OAuth, но не смог правильно его использовать.

Надеюсь, кто-нибудь сможет мне помочь, спасибо.

Ответы [ 3 ]

1 голос
/ 02 августа 2011

если я уже вошел в систему, как я могу получить его документы

Вот хороший справочник с большим количеством информации, чем я мог бы предоставить себе:

http://code.google.com/apis/documents/docs/3.0/developers_guide_java.html

Это должно привести вас на правильный путь.

0 голосов
/ 06 августа 2011
  1. сначала выполните часть oauth, используя, например, библиотеку указателей: вот пример (посмотрите там пример кода для Google)
  2. после завершения процесса oauth на шаге 1; и сохранить ACCESS_TOKEN и TOKEN_SECRET вы можете получить доступ к сервису Google Docs, как фрагмент кода ниже.

(примечание: CONSUMER_KEY & CONSUMER_SECRET - это те, которые вы получаете от Google и используете на шаге 1. ACCESS_TOKEN & TOKEN_SECRET - токены секретного доступа, отправленные вам сервером google auth после завершения процесса oauth на шаге 1)

надеюсь, это поможет.

GoogleOAuthParameters oauthParameters = new GoogleOAuthParameters();
  oauthParameters.setOAuthConsumerKey(CONSUMER_KEY);
  oauthParameters.setOAuthConsumerSecret(CONSUMER_SECRET);
  oauthParameters.setOAuthToken(ACCESS_TOKEN);
  oauthParameters.setOAuthTokenSecret(TOKEN_SECRET);

  DocsService client = new DocsService("yourCompany-YourAppName-v1");
  client.setOAuthCredentials(oauthParameters, new OAuthHmacSha1Signer());

  URL feedUrl = new URL("https://docs.google.com/feeds/default/private/full");
  DocumentListFeed resultFeed = client.getFeed(feedUrl, DocumentListFeed.class);
  for (DocumentListEntry entry : resultFeed.getEntries()) {
    System.out.println(entry.getTitle().getPlainText());
  }
0 голосов
/ 03 августа 2011

Пользователь прошел проверку подлинности в App Engine, но он не прошел проверку подлинности для других служб или не предоставил вам доступ к ним. Вы не можете использовать их учетные данные App Engine для доступа к любым другим службам; вам нужно будет следовать стандартной процедуре авторизации OAuth, чтобы получить доступ к любым другим службам, принадлежащим этому пользователю.

...