#java #amazon-sns #aws-java-sdk
#java #amazon-sns #aws-java-sdk
Вопрос:
Я пытался написать код для подписки на конечную точку раздела в Amazon simple notification service. После подписки на идентификатор электронной почты конечной точки было отправлено письмо с подтверждением.
ConfigurationSet configurationSet = new ConfigurationSet().withName(configSetName);
CreateConfigurationSetRequest createConfigurationSetRequest = new CreateConfigurationSetRequest().withConfigurationSet(configurationSet);
amazonSES.createConfigurationSet(createConfigurationSetRequest);
CreateTopicRequest createTopicRequest = new CreateTopicRequest(topicName);
CreateTopicResult createTopicResult = amazonSNS.createTopic(createTopicRequest);
SubscribeRequest subscribeRequest = new SubscribeRequest(createTopicResult.getTopicArn(), "email", endPoint);
SubscribeResult subscribeResult = amazonSNS.subscribe(subscribeRequest);
Подтвердить подписку можно двумя способами
1. Зайдите в почту и нажмите «Подтвердить подписку»
2. Используйте ConfirmSubscription API, как показано ниже
public void confirmSubscription(String token, String topicArn) {
ConfirmSubscriptionRequest confirmSubscriptionRequest = new ConfirmSubscriptionRequest()
.withTopicArn(topicArn)
.withToken(token)
.withAuthenticateOnUnsubscribe("ConfirmSubscriptionResult
ConfirmSubscriptionResult confirmSubscriptionResult = amazonSNS.confirmSubscription(confirmSubscriptionRequest);
}
Во втором способе нам нужен токен, который генерируется, когда мы нажимаем ссылку «Подтвердить подписку».
Итак, мне нужно передать этот токен в качестве параметра в методе confirmSubscription().
Есть ли какой-либо способ для этого?
Можем ли мы настроить вызов rest api при нажатии кнопки подтвердить подписку по почте?
Пожалуйста, помогите мне
Ответ №1:
Итак, способ, которым я извлек токен, заключался в использовании кода для входа в электронное письмо, отправленное подписанному пользователю, и извлечения токена из URL-ссылки. Немного запутанно, но это сработало.