В моем проекте Angular я настроил AWS Amplify с OAuth и размещенным пользовательским интерфейсом .
Все работает нормально. Когда я хочу подключиться к Google, меня перенаправляют обратно с URL-адресом типа http://localhost:4200/?code=de79bfa4-xxxxxx&state=2xxxxxx, который хорошо обрабатывается AWS Amplify Hub.
Теперь я хочу настроить Stripe Connect в моем проекте, который также использует OAuth-поток потока .
Поэтому я настраиваю свою ссылку OAuth, как определено в документации, добавляя ссылку, как показано ниже:
<a class="stripe-connect" href="https://connect.stripe.com/oauth/authorize?response_type=code&client_id=ca_xxxxxx&scope=read_write"><span>Connect with Stripe</span></a>
Задача
Я перенаправлен обратно с URL-адресом, как http://localhost:4200/stripe?scope=read_write&code=ac_xxxxxx
К сожалению, этот URL также обрабатывается Amplify, и я получил следующее сообщение об ошибке:
zone.js: 1152 POST https://[domain].amazoncognito.com/oauth2/token 400
core.js: 15724 ОШИБКА Ошибка: Uncaught (в обещании): Ошибка: invalid_grant
Ошибка: invalid_grant
Это понятно, потому что Amplify пытается обработать код Stripe Connect ..
Но я не знаю, как исправить это поведение.
Есть идеи решить эту проблему?
Воспроизвести
- Настройка примера репозитория с помощью пользовательского интерфейса Amplify Auth Hosted UI
- Редактировать Stripe client_id в
stripe.component.html
- Запустить проект
- Связаться с Google
- Перейти к настройкам
- Нажмите на ссылку «Соединить с полосой»
- В форме Stripe нажмите «Игнорировать эту учетную запись»
- Смотри ошибку
![Error message](https://i.stack.imgur.com/4wvW8.png)