метод refresh_token в DocuSign SDK?

#docusignapi

#docusignapi

Вопрос:

Используя токен обновления, вы можете получить новый токен доступа. https://developers.docusign.com/esign-rest-api/guides/authentication/oauth2-code-grant #

Не удалось найти API в SDK для обновления токена доступа с помощью токена обновления. Пожалуйста, дайте мне знать, если есть какой-то доступный API, и я не смог найти его в SDK, или если для него доступен какой-то пример кода.

Ответ №1:

Недавно я работал над проектом, в котором мне нужно было получить токен доступа, используя токен обновления, и не нашел подходящего метода в sdk. Итак, как предлагает Ларри К., я сделал запрос POST, используя библиотеку суперагентов.Код выглядит следующим образом :

 const refreshToken = <yourRefreshToken>;
const clientString = clientId   ":"   clientSecret,  
postData = {      
  "grant_type": "refresh_token",      
  "refresh_token": refreshToken, },  
headers= {      
  "Authorization": "Basic "   (new 
       Buffer(clientString).toString('base64')),    
 },  
authReq = superagent.post( dsConfig.dsOauthServer      
                      "/oauth/token")      
          .send(postData)
          .set(headers)      
          .type("application/x-www-form-urlencoded");
  

Я написал статью об этом, которая может помочь.

Ответ №2:

Синтаксис для генерации нового токена доступа из токена обновления:

     POST <YOUR_TOKEN_URI>
    Authorization: Basic <BASE64(‘YOUR_INTEGRATION_KEY: YOUR_SECRET_KEY’)>
    grant_type=refresh_tokenamp;refresh_token=YOUR_REFRESH_TOKEN
  

Для среды разработчика URI токена равен:
https://account-d.docusign.com/oauth/token
Для производственной платформы URI токена равен:
https://account.docusign.com/oauth/token

Значение base64 для авторизации может быть сгенерировано в консоли JavaScript с помощью следующего вызова метода: btoa(‘Ключ интеграции: секретный ключ’)

Это можно сделать в Google Chrome -> Дополнительные инструменты -> Инструменты разработчика -> Консоль -> введите ‘btoa (‘Ключ интеграции: секретный ключ’) и нажмите Enter Или в Google Chrome, Ctrl Shift I -> Консоль

Подробная информация здесь.

Ответ №3:

Поток предоставления кода авторизации OAuth довольно стандартизирован. Можно использовать вашу любимую библиотеку предоставления кода авторизации для вашего программного стека (независимо от DocuSign).

Если вы не можете найти библиотеку, которая вам нравится, вы можете сделать запрос POST самостоятельно, используя библиотеку HTTP-запросов.

Обратите внимание, что другие методы поддержки кода авторизации OAuth, которые сегодня доступны в некоторых пакетах DocuSign SDK, в будущем будут устаревшими. Лучше использовать специфичную для стека библиотеку OAuth, которая будет автоматически обрабатывать перенаправление, правильное использование параметра состояния и другие аспекты потока предоставления кода аутентификации.