Собственная библиотека для соединения с Вконтакте API

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в Flash-приложениях (ActionScript)
Ответить
Sasho'OK 515
Сообщения: 36
Зарегистрирован: 27 мар 2011, 14:03

Собственная библиотека для соединения с Вконтакте API

Сообщение Sasho'OK 515 »

Сегодня в голову пришла мысль сделать свою библиотеку т.к. в контейнере я не смыслю а стандартная библиотека часто выдаёт ошибку 1009

Почитав это : http://vk.com/developers.php?o=-1&p=%C2 ... 0%F1%20API
я понял что на сервер можно передавать запросы зная :
1) id приложения
2) метод
3) sig
4) sid

вот код как я получаю sig (может сдесь вся проблема :) я толком неразобрался как его делать ) :
ранее я ввёл переменные : api_id , method ,secret

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

var sig:String = MD5.encrypt("api_id=" + api_id + "method=" + method + "v=3.0" + secret);
затем я выполняю запрос :

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

var echo:String = 'http://www.vkontakte.ru/api.php?v=3.0&api_id='+api_id+'&method='+method+'&format=xml&uids='+user_id+'&sid='+sid+'&sig='+sig;            trace(echo);            var loader:URLLoader = new URLLoader();            var request:URLRequest=new URLRequest(echo);            loader.load(request);            loader.addEventListener(Event.COMPLETE , function(e:Event):void {                trace(loader.data);            });
но в итоге у меня выдаёт в трассировке :

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

 <?xml version="1.0" encoding="utf-8"?><error> <error_code>4</error_code> <error_msg>Incorrect signature: sid & secret authorization</error_msg> <request_params list="true">  <param>   <key>v</key>   <value>3.0</value>  </param>  <param>   <key>api_id</key>   <value>2272088</value>  </param>  <param>   <key>method</key>   <value>GetProfiles</value>  </param>  <param>   <key>format</key>   <value>xml</value>  </param>  <param>   <key>uids</key>   <value>1</value>  </param>  <param>   <key>sid</key>   <value>81ec86c2ae7a89a0ec06c041a8ef26ec38877c8f7ef5e71b8d92f445250d32</value>  </param>  <param>   <key>sig</key>   <value>26b9d415f61fd51c68d9dea178b962cb</value>  </param> </request_params></error> 
sig я брал из исходного кода страницы
secret я брал оттуда же

И вопрос к знатакам : ЧТО ЗДЕСЬ НЕТАК!!!! :!: :!: :!: :!: :ugeek:
Sasho'OK 515
Сообщения: 36
Зарегистрирован: 27 мар 2011, 14:03

Re: Собственная библиотека для соединения с Вконтакте API

Сообщение Sasho'OK 515 »

вот весь вид функции и обращение к ней :

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

 ФУНКЦИЯ : public function OtherMethod(api_id:Number,method:String,user_id:Number,sid:String,secret:String):void {var sig:String = MD5.encrypt("api_id=" + api_id + "method=" + method + "v=3.0" + secret);var echo:String = 'http://www.vkontakte.ru/api.php?v=3.0&api_id='+api_id+'&method='+method+'&format=xml&uids='+user_id+'&sid='+sid+'&sig='+sig;trace(echo);var loader:URLLoader = new URLLoader();var request:URLRequest=new URLRequest(echo);loader.load(request);loader.addEventListener(Event.COMPLETE , function(e:Event):void {trace(loader.data);});} 

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

 ВЫЗОВ :import vk.MD5;import vk.API_Method;var api:API_Method = new API_Method();api.OtherMethod(2272088,"GetProfiles",1,"81ec86c2ae7a89a0ec06c041a8ef26ec38877c8f7ef5e71b8d92f445250d32","sVc6QVzlxNbXWKXCbH1V"); 
Ответить