Подключение Quickbooks OAuth через скрипт Google Apps

Я пытаюсь подключить API Quickbooks через OAuth. Я добавил библиотеку OAuth 2 в сценарий приложений и развернул веб-приложение. URL-адрес веб-приложения — это то, что я использую в качестве URI при вызове OAuthService, а также настроил его в параметрах URI Quickbooks. Я открываю сайт Quickbooks для авторизации, но затем продолжаю получать ошибки от Google или Intuit.

Код выглядит следующим образом:

function getAuthorizationUrl() {
  console.info('getAuthorizationUrl called');
  var service = getOAuthService();
  if (!service.hasAccess()) {
    var authorizationUrl = service.getAuthorizationUrl();
    return authorizationUrl;
  }
}

function getOAuthService() {
  var REDIRECT_URI = 'https://script.google.com/macros/s/[SCRIPT_ID]/usercallback/';
  return OAuth2.createService('QuickBooks')
      .setAuthorizationBaseUrl('https://appcenter.intuit.com/connect/oauth2')
      .setTokenUrl('https://oauth.platform.intuit.com/oauth2/v1/tokens/bearer')
      .setClientId(CLIENT_ID)
      .setClientSecret(CLIENT_SECRET)
      .setRedirectUri(REDIRECT_URI)
      .setCallbackFunction('authCallback')
      .setPropertyStore(PropertiesService.getUserProperties())
      .setScope('com.intuit.quickbooks.accounting')
      .setTokenHeaders({
        'Content-Type': 'application/x-www-form-urlencoded'
      });
}

В настоящее время я получаю эту ошибку, хотя URI одинаковы на обоих концах.

Сообщение об ошибке

Недопустимое значение параметра запроса redirect_uri. Убедитесь, что это указан в разделе URI перенаправления на вкладке ключей вашего приложения и соответствует это точно. Нажмите здесь, чтобы узнать больше о запросе redirect_uri. параметр.

Любое предложение? Я попробовал все возможные конфигурации URI.

Обновлено:

Решение: используйте OAuth2.getRedirectUri()

Сообщение довольно ясное, поэтому вы можете перепроверить свой URI перенаправления. Библиотека OAuth2 не требует установки URI перенаправления, поскольку он предоставляется автоматически, поэтому вы можете удалить этот вызов set и использовать значение, предоставленное service.getRedirectUri().

Diego 07.03.2024 17:15

@Diego Поверьте мне, я проверил трижды, и URI остались такими же. Сейчас работает использование OAuth2.getRedirectUri().

OrangeHat 07.03.2024 18:29
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
2
105
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Решение: используйте OAuth2.getRedirectUri()

Пожалуйста, объясните, как и почему, чтобы будущие читатели поняли

Harrison 08.03.2024 10:27

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