Comments 20
Хранимые процедуры и execute — это не одно и то же. VK.API.execute — это метод, позволяющий выполнить код на стороне сервера ВКонтакте, при этом бонусом идёт то, что можно связать несколько разных запросов к их API в одну команду. А хранимая процедура — это код, который изначально вы сохраняете в ВК. Вызывается он командой execute.ИМЯ_ПРОЦЕДУРЫ.
… вычитывать access_token на клиенте и делать AJAX POST на сервер и после этого его свободно использовать...
Каким образом, если авторизация работает только если redirect_uri = oauth.vk.com/blank.html?
не только, можно и на свой
redirect_url
… http:://REDIRECT_URL#access_token=TOKEN&user_id=USER_ID, т.е. данные передаются через хеш тег (а не квери стринг), поэтому на своей клиентской стороне доступиться.Я проверил перед написанием комментария, в ошибке было указано что разрешено только для oauth.vk.com/blank.html
а я пробую в приложении и все работает, в настройках моего ВК приложения есть 'адрес сайта' =
получаю колбек, на такой вот урл
Тут я пожалуй поменяю свое мнение — это реальный воркэраунд в нашел случае… Я еще раз проверю и это возможно выход и поддержка ВК таки будет :)
http://localhost:3001
получаю колбек, на такой вот урл
http://localhost:3001/api/networks/vk/callback#access_token=0658236d51cb473d27cfcbce59b4881cb12781f1f8596929d6c2e83cd1624471b1e4f041480bc2d439b89&expires_in=0&user_id=5696499&state=abe@local.com
вычитывать access_token на клиенте и делать AJAX POST на сервер и после этого его свободно использовать…
…
… Но всевозможные «обходы» и «хаки» это не то, как бы мы хотели строить свой продукт.
Тут я пожалуй поменяю свое мнение — это реальный воркэраунд в нашел случае… Я еще раз проверю и это возможно выход и поддержка ВК таки будет :)
Раньше такое работало, но где-то с конца прошлого года перестало: с тех пор токен для Standalone-приложений можно использовать только с того IP-адреса, с которого был сделан запрос о его выдаче.
Сейчас на всякий случай попробовал ещё раз, возвращается ошибка с таким сообщением:
Сейчас на всякий случай попробовал ещё раз, возвращается ошибка с таким сообщением:
"error_msg":"User authorization failed: access_token was given to another ip address."
Все верно… и комментарий от artishok правильный… даже если получить токен таким способом, при реквесте получаю такую ошибку…
к сожалению воркэраунд не пройдет…
{ error:
{ error_code: 20,
error_msg: 'Permission to perform this action is denied for non-standalone applications: you should request token using blank.html page',
request_params: [ [Object], [Object], [Object], [Object], [Object] ] } }
к сожалению воркэраунд не пройдет…
кстати, нашел как одно из приложений обходит эту проблему: time2post.ru/about
«Поставив себе цель, порадовать наших пользователей на этой неделе», но подумав мы решили всё таки не напрягаться…
Сделайте приложение в качестве подключенного сайта, используйте redirect_uri на свой домен, в хэше будет access_token. Сохраняете для текущего юзера, получаете профит
Ну вконтакте можно понять, а вдруг у кого-то хардпорн налайкан :)
Ко мне после упомянутого вами поста время от времени стучатся в Skype те или иные хаброжители с просьбой помочь разобраться с API ВК. Иногда вопросы нехитрые, иногда довольно сложные. Буквально пару дней назад спрашивали, например, как получить прямую ссылку на видео-файл. Ответ: никак, если у вашего приложения нет привилегии прямой авторизации, которая, на минуточку, кроме упомянутой вами в посте небезопасности, требует еще и одобрения со стороны администрации ВК.
Много там всяких ограничений и неочевидных нюансов. Поэтому я с опытом пришел к такому принципу: если работаешь с API ВК, будь готов, что то, что ты задумал, будет преднамеренно невозможно выполнить. Увы.
Много там всяких ограничений и неочевидных нюансов. Поэтому я с опытом пришел к такому принципу: если работаешь с API ВК, будь готов, что то, что ты задумал, будет преднамеренно невозможно выполнить. Увы.
Это очень не правильно, как по мне… немного повторюсь, но имея опыт со всякими API, именно ВК оказался самым не очевидным и ограниченными. Это не очень здорово, для сторонних разрабочиков и для платформы. Я так понимаю, основной упор идет на приложения ВК (flash, iframe) но не на клиентские/веб приложения.
Хотя и не думаю, что администрацию ВК это сильно волнует… к сожалению. А прямая авторизация это совсем не решение…
Хотя и не думаю, что администрацию ВК это сильно волнует… к сожалению. А прямая авторизация это совсем не решение…
Да, все так и есть. Через год после публикации того моего поста можно смело утверждать, что он привел к… ничему. Есть у парней из ВК еще одна интересная особенность при разработке API: никто не знает, чем они занимаются и что планируют выпустить / запилить. Есть только changelog, изменения в котором появляются постфактум. Запустили биржу для пабликов — класс. Будет ли API? Загадка. Хотя спрос есть. Этакая собака на сене, короче.
Всевозможные «обходы» и «хаки» — это зло, не спорю. Но честно говоря, если они — это единственное, что возможно сделать, то надо делать.
Я сам помню, как долбился об Outlook, весь аддон, который моя команда в итоге выплюнула, это был сплошной костыль. Но работает уже два года, какие-то клиенты им пользуются, и для бизнеса это самое важное.
С другой стороны, я бы мог сказать, что задача не решаема без использования «обходов» и «хаков». Наверное, мой бонус был бы меньше, а компания не продала тем клиентам комплекс ПО.
Меня этот вопрос очень интересует, и для себя я давно всё решил, что шоу должно продолжаться, но интересно как в этом случае поступают другие люди.
Я сам помню, как долбился об Outlook, весь аддон, который моя команда в итоге выплюнула, это был сплошной костыль. Но работает уже два года, какие-то клиенты им пользуются, и для бизнеса это самое важное.
С другой стороны, я бы мог сказать, что задача не решаема без использования «обходов» и «хаков». Наверное, мой бонус был бы меньше, а компания не продала тем клиентам комплекс ПО.
Меня этот вопрос очень интересует, и для себя я давно всё решил, что шоу должно продолжаться, но интересно как в этом случае поступают другие люди.
Sign up to leave a comment.
Почему у нас нет поддержки ВКонтакте