проблема с Incorrect signature

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в Flash-приложениях (ActionScript)
Light
Сообщения: 47
Зарегистрирован: 13 июн 2010, 14:10

проблема с Incorrect signature

Сообщение Light »

Есть проблема. В приложении происходит запрос об инфе пользователя через getProfiles. Инфу обо мне выводит нормално, а о других никак не хочет выводить. Выдает ошибку 4 (Incorrect signature).

Sig формируется вроде бы правильно.

uidapi_id=api_idfields=photomethod=getProfilesuids=uidv=2.0СЕКРЕТ ПРИЛОЖЕНИЯ

а вот запрос:

"http://api.vkontakte.ru/api.php?api_id= ... &sig="+sig

Кто-нибудь сталкивался с подобной проблемой? В чем может быть ошибка?
Аватара пользователя
bodnar
Модератор
Модератор
Сообщения: 1399
Зарегистрирован: 03 апр 2010, 06:41

Re: проблема с Incorrect signature

Сообщение bodnar »

Давай целый кусок кода где формируется сигнатура и запрос.

з.ы. чувствую что нужно создавать подраздел по сигнатурам :lol: :lol:
Light
Сообщения: 47
Зарегистрирован: 13 июн 2010, 14:10

Re: проблема с Incorrect signature

Сообщение Light »

Копипастаю...

var strtosig:String = qdata[2]+'api_id='+api_id+'fields=photomethod=getProfilesuids='+qdata[2]+'v=2.0'+api_secret;
sig=MD5.encrypt(strtosig);
var req:URLRequest=new URLRequest("http://api.vkontakte.ru/api.php?api_id= ... &sig="+sig);

в переменной qdata[2] находится нужный id. С ним все нормально, я проверял 10 раз.
Light
Сообщения: 47
Зарегистрирован: 13 июн 2010, 14:10

Re: проблема с Incorrect signature

Сообщение Light »

аа, все, кажись понял и исправил

пытался сделать так, чтобы из приложения была возможность показывать инфу о любом стороннем пользователе с помощью этого метода, но это кажись невозможно.
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: проблема с Incorrect signature

Сообщение Александр »

viewer_idapi_id=api_idfields=photomethod=getProfilesuids=uidv=2.0СЕКРЕТ ПРИЛОЖЕНИЯ
Light
Сообщения: 47
Зарегистрирован: 13 июн 2010, 14:10

Re: проблема с Incorrect signature

Сообщение Light »

Александр, спасибо огромное :D
Аватара пользователя
Garrat
Сообщения: 36
Зарегистрирован: 15 июл 2010, 14:44

Re: проблема с Incorrect signature

Сообщение Garrat »

Не буду создавать еще одну тему, ибо проблема та же.

Метод wall.savePost
Error - 4 (Incorrect signature)
Самое интересное, что вот это приложение - http://vkontakte.ru/app35569 - получает такую же ошибку, что крайне странно.
Методом долгих переборов пришел к выводу, что, если в запросе оставить всего 2 параметра (wall_id и photo) ошибка меняется на Invalid photo. При учете других параметров (hash, v, server...) выводит проблему с подписью.

Если кто знает, или имеет малейшее представление, в чем может быть проблема - буду очень признателен за совет.

Код: Выделить всё

 var wall_id:uint=wrapper.application.parameters.user_id;var photo:String=data.photo;      //data - ответ на POST-запрос в формате JSONvar post_id:String='post1';var server:uint=data.server;var hash:String=data.hash;var sid:String=wrapper.application.parameters.sid;var a_url:String=wrapper.application.parameters.api_url;var secret:String=СекретПриложения;   //Пробовал также wrapper.application.parameters.secret;                              var sig:String=viewer_id+                            'api_id='+api_id+                            'hash='+hash+                            'method=wall.savePost'+                            'photo='+photo+                            'post_id'+post_id+                            'server='+server+                            'v=2.0'+                            'wall_id='+wall_id+                            secret;                var signature:*=MD5.encrypt(sig);                var req:String=a_url+                            '?api_id='+api_id+                            '&hash='+hash+                            '&method=wall.savePost'+                            '&photo='+photo+                            '&post_id='+post_id+                            '&server='+server+                            '&v=2.0'+                            '&wall_id='+wall_id+                            '&sig='+signature;                var request:URLRequest=new URLRequest(req);
Да, менять версию на 3.0 и добавлять sid пробовал. Результат тот же.
Последний раз редактировалось Garrat 17 авг 2010, 20:00, всего редактировалось 1 раз.
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: проблема с Incorrect signature

Сообщение Александр »

Garrat
Все ли параметры верно определены до формирования сигнатуры?
сделай

Код: Выделить всё

trace(sig);// до этогоvar signature:*=MD5.encrypt(sig);
и напиши что выдаёт. Секретный ключ и хэш можешь изменить.
Аватара пользователя
Garrat
Сообщения: 36
Зарегистрирован: 15 июл 2010, 14:44

Re: проблема с Incorrect signature

Сообщение Garrat »

Сразу после формирования подписи:

474441api_id=1905757hash=ehbv4933hgf3bv3ovb83232984hf42hfmethod=wall.savePostphoto=89ad95995dxpost_id
=post1server=9553v=2.0wall_id=474441yh45yu34u9

Секрет и хэш изменены, количество символов то же.

P.s. Офтоп. Не подскажите, как можно отслеживать такие вещи, как, например, подпись? Я добавляю TextField и вывожу результат в него. Может, можно как-то иначе? С TextField есть некоторые сложности, он, залитый вконтакт, не может поймать фокус => не получается копипастить. Чувствую, что вопрос нубский (пишу на флеше 3-й день, во флексе все было несколько иначе).
Аватара пользователя
Александр
Создатель сайта
Создатель сайта
Сообщения: 4574
Зарегистрирован: 27 сен 2009, 16:45

Re: проблема с Incorrect signature

Сообщение Александр »

Garrat
Ошибок не вижу.
Garrat писал(а):P.s. Офтоп. Не подскажите, как можно отслеживать такие вещи, как, например, подпись?
Почитай про Flash Player Debug - специальная версия плеера для отладки. Но я не пробовал.
Ответить