iOS - загрузить файл в Dropbox (логин пользователя) - PullRequest
2 голосов
/ 07 сентября 2011

Я не получаю его с API Dropbox.

У меня есть приложение с CoreData.Пользователь может выбрать, хочет ли он загрузить файл SQlite в Dropbox.Поэтому я сделал вкладку настроек, где он может де / активировать синхронизацию Dropbox и ввести имя пользователя и пароль Dropbox.(Да, я знаю, что Dropbox не хочет хранить пароль).

Файл SQLite должен быть загружен, если пользователь что-то изменит.Поэтому мне не нужен ViewController для функций Dropbox.

Мне нужно что-то вроде класса DropboxHelper (NSObject) с функцией типа

+ (void)uploadFile;

В моем Dropboxаккаунт, я создал приложение.Ключ приложения и секрет приложения, которые я использую в своем AppDelegate:

DBSession* session = [[[DBSession alloc] initWithConsumerKey:@"KEY"consumerSecret:@"SECRET"]autorelease]; <br>
[DBSession setSharedSession:session];
[session release];

Для загрузки мне нужен DBRestClient.В своей функции загрузки я проверяю, связана ли сессия.Если нет, то войдите в систему:

if (![[DBSession sharedSession]isLinked]) {
        [self.restClient loginWithEmail:@"USERNAME" 
                      password:@"PASSWORD";  
}

Но сессия всегда связана ?!И я должен инициализировать DBRestClient следующим образом:
restClient = [[DBRestClient alloc] initWithSession: [DBSession sharedSession]];

Так что я не получаю:

Мне нужноAPP KEY и APP SECRET для использования API (поэтому это API-ключ)?

Как войти в систему пользователя, если сеанс уже связан?(Я не хочу использовать DBLoginController для входа в систему)

Если я не инициирую сеанс в AppDelegate, как я могу инициировать DBRestClient с сеансом?

Возможно ли это вообще?использовать API, как это?Без Viewcontroller и использовать вместо этого NSObject?

1 Ответ

0 голосов
/ 18 декабря 2011

https://www.dropbox.com/developers/reference/bestpractice охватывает это.

Никогда не обрабатывайте логин и пароль пользователя. Вся аутентификация приложения выполняется с использованием токенов, которыми обмениваются через мобильное приложение Dropbox или веб-сайт, и методами, описанными в руководстве по аутентификации.

Еще один способ сказать, что Dropbox не хочет, чтобы пользователи доверяли разработчикам приложений свои пароли.

...