2016-02-02 5 views
1

Я работаю над проектом Java, в который интегрированы сервисы Evernote, через приложение, созданное на Evernote. В настоящее время все работает нормально, за исключением отзыва доступа.Java, Evernote: Отменить доступ к приложению в Evernote

Когда пользователь, который уже разрешил приложение, в какой-то момент решает не предоставлять этому приложению никакого доступа, я также хотел бы отменить авторизацию приложения из учетной записи пользователя evernote.

Для этого я ищу образец, но пришел с пустыми руками. Одна найденная мной ссылка была this, где требовалось вызвать этот метод с помощью UserStore. У меня есть токен доступа, но, к сожалению, я работаю только с NoteStoreClient, а не с UserStore.

Вот код отзыва, который у меня есть до сих пор.

Person person = this.personService.getCurrentlyAuthenticatedUser(); 

     if (!(person == null)) { 
      if (person.isEvernoteConsumed()) { 
       try { 
        this.evernoteDAO.deleteEvernoteForUser(person.getId()); 

        Evernote evernote = getUsersEvernote(person.getId()); 
        EvernoteAuth evernoteAuth = new EvernoteAuth(EVERNOTE_SERVICE, evernote.getAccessToken()); 
        NoteStoreClient noteStoreClient = new ClientFactory(evernoteAuth).createNoteStoreClient(); 

       }catch (Exception e){ 
        e.printStackTrace(); 
       } 
      } 
     } 

Ничего особенного в этом коде, я знаю. Если кто-то имеет представление об отзыве от Evernote, любезно сообщите мне. Спасибо.

ответ

2

Вы на правильном пути, that UserStore method позволит вам отозвать вашу сессию OAuth. Как вы сказали, вы должны использовать клиент userstore вместо этого, вы должны иметь возможность создавать его так же, как и клиент-нотестр:

UserStoreClient userStoreClient = 
    new ClientFactory(evernoteAuth).createUserStoreClient(); 
userStoreClient.revokeLongSession(evernoteAuth); 
+0

Это сработало. Спасибо. –

 Смежные вопросы

  • Нет связанных вопросов^_^