Возможен ли вызов secure.sendNotification без access_token?

Здравствуйте, возможен ли вызов этого метода с собственного сервера без предварительного получения access_token?

Официальная документация к secure.sendNotification утверждает, что да, начиная с апреля прошлого года, это возможно - при помощи сервисного ключа доступа.

Я нашел этот ключ в настройках своего iframe-приложения, но как встроить его в URL вызова метода (я использую Java и Jetty HttpClient) - непонятно.

Какой именно параметр нужно добавлять в мой URL?

String VK_API_URL = "https://api.vk.com/method/secure.sendNotification?user_id=%s&message=%s&v=5.71";


Кроме того, в документации непонятно, привязан сервисный ключ доступа к IP-адресу сервера моей игры или все-таки нет:

Для запросов к методам secure сервисный ключ привязан к IP-адресу, с которого был сгенерирован.


Получить сервисный ключ доступа можно в настройках Вашего приложения. Ключ не привязан к IP-адресу при использовании с открытыми методами, срок его действия не ограничен


Если он все-таки привязан, то как получить его именно для моего сервера?

Обновление:

Я попытался добавить параметр в форме access_token=сервисный ключ доступа, но увы - на вызов GET следующего URL:

https://api.vk.com/method/secure.sendNotification?access_token=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX&user_id=62184875&message=%D0%A1%D0%BE%D0%BE%D0%B1%D1%89%D0%B5%D0%BD%D0%B8%D0%B5+%D0%BE%D1%82+%D0%B8%D0%B3%D1%80%D0%BE%D0%BA%D0%B0&v=5.71


Приходит ответ (хотя получатель и установил у себя мою еще не прошедшую проверку в каталог игру):

{"error":{"error_code":7,"error_msg":"Permission to perform this action is denied","request_params":[{"key":"oauth","value":"1"},{"key":"method","value":"secure.sendNotification"},{"key":"user_id","value":"62184875"},{"key":"message","value":"Сообщение от игрока"},{"key":"v","value":"5.71"}]}}


Добавление еще &client_secret=... ничего не изменило
  • Вопрос задан
  • 175 просмотров
Пригласить эксперта
Ответы на вопрос 1
Dyaminigo
@Dyaminigo
.NET Developer
Возможен. Сервисный ключ необходимо передавать в параметре "access_token".
Как написано в совершённом изменении, Вы можете спокойно использовать сервисный ключ, который указан в настройках приложения и он не будет привязан к IP.
UPD. Много противоречивой информации в документации, где-то нужно по-прежнему для сервера запрашивать сервисный ключ отдельно, а где-то пишут, что и из настроек подойдёт.
В ответе я склоняюсь к информации из уже совершённого изменения.
С апреля 2017 года для использования открытых методов и методов secure нужно будет использовать сервисный ключ доступа из настроек приложения. Вам не придется делать отдельный запрос к oauth.vk.com, чтобы получить его.

Также обратите внимание на это.
Помимо стандартных параметров, указанных в описании методов, к запросу необходимо добавлять параметр client_secret, содержащий значение из поля «Защищенный ключ» в настройках приложения.

Secure. На странице секции указывается запрашивать сервисный ключ старым способом, но ничто не мешает Вам попробовать и вроде актуальный вариант, и старый.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы
Live Typing Омск
от 50 000 до 100 000 руб.
Интехнова Белгород
от 30 000 до 60 000 руб.
22 июля 2018, в 20:41
10000 руб./за проект
22 июля 2018, в 20:13
2000 руб./за проект