Ubuntu One API Java - как использовать REST и AccessToken?

Я пишу Java-приложение в Eclipse, которое выполняет резервное копирование данных в несколько потребительских облачных сервисов с шифрованием и резервированием.

До сих пор я успешно реализовал процесс аутентификации, как описано в документации .

На данный момент, я не знаю, как поступить. Следующим шагом будет реализация аутентификации с сохраненным AccessToken и Afterwars, реализующей функцию загрузки / выгрузки / перечисления через REST API.

  1. Я думаю, что мне нужно хранить строку oauth.getSerialized (). Как я могу аутентифицироваться с этой строкой впоследствии? Это не работает, например :[[99]

    AuthenticateResponse oauth = api.authenticate(serialized);
    api.setAuthorizer(new OAuthAuthorizer(oauth));
    
  2. Может кто-нибудь сказать мне, пожалуйста, как я могу использовать REST API с Java? Насколько мне известно, в области разработчиков нет никаких объяснений или ссылок.

И, между прочим, я потратил как минимум один час, пытаясь исправить ошибки, потому что некоторые необходимые библиотеки перечислены после примера кода. : /

2
задан 20 December 2012 в 02:05

1 ответ

Мне удалось решить это.

Как вы уже упоминали, вы можете хранить токены аутентификации. Итак, следующий путь - это:

Цель: создать объект U1FileAPI

public U1FileAPI(String appPackageName, String appVersion,
    HttpClient httpClient, Authorizer authorizer)

Конструктор принимает:

  1. appPackageName> Это то же самое, что и имя пакета, которое у вас есть учитывая @ время создания аутентификации
  2. appVersion> Это то же самое, что и имя appVersion, которое вы дали @ времени создания аутентификации
  3. httpClient> create new HttpClient httpClient = new DefaultHttpClient ();
  4. authorizer> Для этого вам не потребуется больших усилий:

    ObjectInputStream input = new ObjectInputStream(
        new FileInputStream("/file/where/you/save/auth/tokens"));
    

Создайте объект OAuthAuthorizer:

OAuthAuthorizer aOuth = OAuthAuthorizer.getWithTokens(
    input.readObject().toString(), new HmacSha1MessageSigner());

Теперь вы хорошо для создания U1FileAPI:

U1FileAPI   uOneFs = new U1FileAPI(package_api, version, httpClient, aOuth);

Используйте методы expose uOneFs для решения ваших реальных требований к резервному копированию.

Просматривая найденную перекрестную ссылку для Ubuntu One, надеюсь, она также поможет вам лучше понять это: http://code.metager.de/source/xref/ubuntu/one/files-java-library/ SRC / главная / ком / ubuntuone / API / файлы / U1FileAPI.java # resourceClient

0
ответ дан 20 December 2012 в 02:05

Другие вопросы по тегам:

Похожие вопросы: