Pull to refresh

Постинг на стену VK с веб-сайта без подтверждения

Вместо вступления или пара слов о...


Приветствую всех. Сегодня я расскажу о том, что веб-сайты имеют таки возможность добавлять посты на стену НЕ через js, а вполне себе обычным, standalone-методом. Не знаю, открою ли я Америку, но родилась данная идея от большой жажды исследований, нежелания подчиняться правилам и нескольких заказчиков, которым уж очень хотелось именно такой возможности.

How it works?

Приложения контакта делятся на 3 типа. Разница между первым и вторым является камнем преткновения, так как в обычных условиях мы не можем выбрать Standalone для веба (адрес куда будут отсылаться токены намертво зашит), но очень хочется!
Но вот в чем дело, после долгих блужданий по сети я наткнулся-таки на подключенные сайты, которые могли размещать посты так, как это делают Standalone-приложения. Но как, черт подери?
Первым делом смотрим на запрос в адресной строке^

И не видим ничего необычного, разве что scope=wall не игнорируется. Секундочку, что за черт?
Естественно ставим свой client_id и redirect_uri, жмем ентер и… облом. Тогда появляется вопрос, собственно, почему мир так несправедлив?
От отчаянья лезем в документацию контакта и читаем про клиентскую авторизацию, а потом опять задаем себе вопрос — ну раз «избранное приложение» может постить на стену может у него и еще какие скрытые возможности затаились? Барабанная дробь…
Меняем redirect_uri на свой домен и response_type на token (у нас же нет секретного ключа чтобы получать токен через code) и…
oauth.vk.com/authorize?client_id=2905274&redirect_uri=localhost&response_type=token&scope=wall%2Coffline

На сервере лежит свежеиспеченный токен.

В чем суть?

Используя только публичный ID избранного приложения (я нашел всего 3 таких, может их больше) мы имеем возможность делать редирект при авторизации на любую страницу. Единственное что огорчает потенциального пользователя — описание приложения при наведении на шестеренку в посту. Это описание будет описанием избранного приложения, но разве много кого заботит этот факт.
Второй вариант добиться того же эффекта но без минуса, то есть использовать свое приложение — curl.

Спасибо за внимание.
Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.