Использование cURL для имитации запроса POST для входа в систему с помощью user-agent?

Отказ от ответственности: я очень новичок во всем, что связано с сетью, поэтому я заранее извиняюсь, если сделаю какие-либо ложные предположения или глупые комментарии в этом вопросе

Задача: я пытаюсь очистить свой токен Venmo Developer Access Token от страницы настроек разработчика. Мне нужен этот токен для использования в веб-приложении, но он меняется каждые 30 минут (Venmo сделал их полный API закрытым, поэтому я не могу правильно запросить токен доступа с OAuth, поэтому я должен использовать этот 30-минутный ограниченный совершать вызовы API).

Форма, которую я пытаюсь смоделировать, находится по адресу https://venmo.com/account/settings/developer -> Get Token (не удается напрямую связать, так как это из уже зарегистрированного статуса. необходимо программно войти в систему, чтобы получить мой идентификатор клиента для следующего шага, но по одной проблеме за раз)

Я посмотрел на форму и обнаружил, что он использует POST для передачи данных. Я отправил форму вручную, а затем извлек данные формы и заголовки запроса, используя Chrome Inspection Network Tool (также попытался скопировать запрос как cURL из Chrome - как я уже сказал, что я любитель с этим)

CURL (строка cmd), с которой я закончил -

curl "https://api.venmo.com/v1/oauth/authorize"
-H "Referer: https://api.venmo.com/v1/oauth/authorize?client_id=XXXX^&response_type=token^&scope=make_payments"
-H "Origin: https://api.venmo.com"
-H "Upgrade-Insecure-Requests: 1"
-H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36"
-H "Content-Type: application/x-www-form-urlencoded"
--data "csrftoken2=XXXX^&auth_request=XXXX^&web_redirect_url=https^%^3A^%^2F^%^2Fvenmo.com^%^2Faccount^%^2Fsettings^%^2Fdeveloper^&username=XXXX^&password=XXXX^&grant=1" --compressed -L`

Проблема. В ответ на этот запрос я получил сообщение об ошибке "Отпечаток устройства ожидался, но не был найден". Я попытался использовать --user-agent с приведенной выше строкой, но это дает тот же результат. Я мало что знаю об отпечатках пальцев на устройстве, поэтому я не уверен, почему он выдает мне эту ошибку, даже если присутствует строка агента пользователя. Можно ли вообще делать то, что я пытаюсь сделать, или безопасность сайта как-то этому препятствует? (Полагаю, мне также понадобится сначала запросить токен csrf, но снова по одной проблеме за раз). Заранее благодарю за любую помощь

0 ответов

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