@gurkin4
Скачивание картинок нужно для решения капчи при авторизации. База картинок тоже есть. Логика решения капчи реализована на другом автокликере. Переношу решение на БАС
Не могу подключить yahoo почту по Oauth2
-
Подскажите, в чём проблема или где я неправильно что делаю. По документации описанной в yahoo, получаю все данные client_id, client_secret, refresh_token, access_token. Но при попытке залогиниться в почту, через модуль баса по методу "Oauth2" всегда получаю Login denied. Пробовал по-разному настроить подключение, но ни в какую не хочет.
Вот данные:
david_berist001@yahoo.com:=WOdAD1726O[]>refresh_token:
AKejc2iKklilQ4ZyroOJwRYVPtLt~001~WyowKmKKvvS9lO9PiO.KkpEhOyA-client_id: dj0yJmk9YUJmMURiRlRpOVEyJmQ9WVdrOU1qQTBRVkJzYTBrbWNHbzlNQT09JnM9Y29uc3VtZXJzZWNyZXQmc3Y9MCZ4PWJi
client_secret:
8010bc4b6d6949c391c60e1c1d0a2547315d8831 -
вся инфа тут, можно взять даже client_id и client_secret:
https://developer.yahoo.com/oauth2/guide/openid_connect/getting_started.html#getting-started-setupтвоя ошибка в том, что ты не указал валидный scope.
scope=openid%20mail-rдоступ к чтению почты, а твой client_id не разрешает запрашивать доступ к чтению оной.Порядок действий:
1. Получаем код авторизации: https://api.login.yahoo.com/oauth2/request_auth?client_id=dj0yJmk9aVhnUWtwTDRnZnJ6JmQ9WVdKalpHVm1hQS0tJnM9Y29uc3VtZXJzZWNyZXQmeD05Mg--&response_type=code&redirect_uri=oob&scope=openid%20mail-r&nonce=YihsFwGKgt3KJUh6tPs2 2. Запрашиваем токены: POST https://api.login.yahoo.com/oauth2/get_token HTTP/1.1 User-Agent: Fiddler Content-Type: application/x-www-form-urlencoded Host: api.login.yahoo.com Content-Length: 201 grant_type=authorization_code&client_id=dj0yJmk9aVhnUWtwTDRnZnJ6JmQ9WVdKalpHVm1hQS0tJnM9Y29uc3VtZXJzZWNyZXQmeD05Mg--&client_secret=09ed456f928682009b5132372a0beede39c82fa3&redirect_uri=oob&code=wzwqa4z // {"access_token":"IOWke9yYpQrtCekK2BUn.aePljQdMjACuz1GJPXyYM2VkhUlmnH_OSr5JMBDUKj6IVMGS6CLNxlXUeES2Ix6mMGNNRgoAwWvApM0CyVV4mxuHWR0xmQFros3iEgII2PKPaR70eY7f.supKDn9ea5pHKCPZvo0Mafs0EIGtdePFsWi0uXiBJJLcfVG6UDNY8emFO8yec249mooB2TYIneEujybKhtggAL6ttxvVGsDy5jik05MmrqAfugXZZRyY6_KzIwZ24cIGFCw4rm7HMm8uM7RjT1C3Rv0aGjpAIrOTHSus4pWf78c57sSJwzMlJtFXEdl.4Yyo9gkSxjWyqbsiShtAedmdwdjXmTIGMNwWcPYUungGvkTyG9yw70TBf4.jZSGbhmRcMrxPQUmAIEARMUWYfUqdEjKAP7TTr.VnLUV3ZqJlWNClaLNceSMD276DjldwltOPbZfq7HYhR5J8xP1Bcp.E0XDkpzZo8BmG1gPaGnCxeUSrWg.o5JqQzhkMvUvYKv_QpXs6UIuu7Pq53tfP.8AuhMN0u89c8ggw2oT9llObrRbRXA62YeSpgnrWDtUONn01dkWnFhRf4su7nosLDn85P60s1RHQAMyRJI3_4TIm_aCHowujx3myKOFVa94GHsIqXZdh5v5jR6bGRME_vwv5HoWRldguXFPWsuQs.pQjK0FtwUWr4nJVW94QnVNrafOn82YyvMQqcNJSvhiiQWAwmRfEhDMEkbD5BCCDQdbQ_B24GiqYomrhEE9jPIbUynbZQoJZzeclJ6Ubg9N1T7_imbMIIeWoQpmeQbzUem9AskrN6y3Gux_zKlQm0uuWzaARtSPvq_Jj5fO0j0dscHj1sSzDPyuo42MsnH4tw1OYxgMgfPjrbRnNovgghMv09grynBMQQ2HMmDvvfR4Jikfsarn52YBV7r.I5sEPMgYCkRprjFGOU-","refresh_token":"AEgYdGiG1maEWaocK4Oi5oRzjCsl~001~t0ZxeuXOIN2CUsgRPR4s1OHRUEs-","expires_in":3600,"token_type":"bearer","xoauth_yahoo_guid":"EU63NPRIHTBRAZ6GRDMFL6MMW4","id_token":"eyJhbGciOiJFUzI1NiIsImtpZCI6IjM0NjZkNTFmN2RkMGM3ODA1NjU2ODhjMTgzOTIxODE2YzQ1ODg5YWQifQ.eyJhdF9oYXNoIjoiNzV4UWRSelRWV1JDTU9Lc1BwQmZ6dyIsImF1ZCI6ImRqMHlKbWs5YVZoblVXdHdURFJuWm5KNkptUTlXVmRLYWxwSFZtMWhRUzB0Sm5NOVkyOXVjM1Z0WlhKelpXTnlaWFFtZUQwNU1nLS0iLCJzdWIiOiJFVTYzTlBSSUhUQlJBWjZHUkRNRkw2TU1XNCIsImF1dGhfdGltZSI6MTc1MjQzODAzOCwiaXNzIjoiaHR0cHM6Ly9hcGkubG9naW4ueWFob28uY29tIiwic2Vzc2lvbl9leHAiOjE3NTM2NDc2MzgsImV4cCI6MTc1MjQ0MjQ3MCwiYXBwX2lkIjoiZGoweUptazlhVmhuVVd0d1REUm5abko2Sm1ROVdWZEthbHBIVm0xaFFTMHRKbk05WTI5dWMzVnRaWEp6WldOeVpYUW1lRDA1TWctLSIsImlhdCI6MTc1MjQzODg3MCwibm9uY2UiOiJZaWhzRndHS2d0M0tKVWg2dFBzMiIsInNpZCI6Im1oY2FSTlhzVmpoSiJ9.NggLzsWVmGzaq_vCBYcIcNLZ6T3H6yu05GcgjUR9Q1SVEgMh-H6P8wHky65_7EV4qyLmSegUduD2cb1FHznh7A"}Вуаля, все работает:
-
@Int64 Спасибо. Да, я по другой инструкции от них же делал "https://developer.yahoo.com/oauth2/guide/flows_authcode/#refresh-token-label".
Но проблема, в том что по документации и примеру от тебя, я не могу ничего получить, то есть первый запрос "request_auth" не проходит даже. Постоянно "https://localhost/?error=invalid_scope&error_description=invalid+scope", либо страница:
.Вот запросы по которым пытался переходить:
Так же без двух "-" в конце client_id пробовал.
А вот что мне выдаёт мой изначальный запрос, который я делал не правильным scope под чтение почты, и там всё окей работает и выдаёт форму access:
Вот такие настройки:

Запрос:
https://api.login.yahoo.com/oauth2/request_auth?client_id=[[CLIENT_ID]]&redirect_uri=https://localhost&response_type=code&scope=openid%20email%20profile&language=en-usРезультат:

-
@Int64 Я как понял, по документации и на скрине, вот такую настройку "mail -> read", можно проставить только в premium api?

Потому что в настройках создания приложения, что я вижу из нужного, только "OpenID Connect Permissions -> Email", что-то вроде "Read | Read/Write" для mail нету:

Или подавать заявку (отправкой им письма на почту), типо чтобы они дали доступ к премиум апи с возможностью включения scope=mail-r?
