Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   API приложений и сред (http://www.flasher.ru/forum/forumdisplay.php?f=61)
-   -   на as2 (ошибка 4. Incorrect signature: server authorization) (http://www.flasher.ru/forum/showthread.php?t=154196)

kashirin 13.04.2011 23:48

на as2 (ошибка 4. Incorrect signature: server authorization)
 
Код AS1/AS2:

#include "vkontakte.as"
#include "MD5as2.as"
//создаем XML , которым получим данные
var XMLProfile:XML=new XML();
// и сделаем запрос следующим образом
GetProfiles("XMLProfile",_root.viewer_id,"sex,photo")
//теперь ловим XML
XMLProfile.onLoad=function(){
txt.text=this;
}

txt - текстовое поле.
Функция GetProfiles класса vkontakte.as.
Код AS1/AS2:

XML.prototype.ignoreWhite = true;
var my_sekret:String="блаблабла";
var my_test_mode:String="0";
var LVgetProfiles:LoadVars=new LoadVars();
function GetProfiles(SV:String,my_uids:String,my_fields:String){
        _method = "method=getProfiles";
        _viewer_id = _root.viewer_id;
        _api_id = "api_id="+_root.api_id;
        _uids = "uids="+my_uids;
        _v="v=2.0";
        _fields = "fields="+my_fields;
        _test_mode="test_mode="+my_test_mode;
        _params = _api_id+"#"+_v+"#"+_method+"#"+_uids+"#"+_fields+"#"+_test_mode;
        _secret = my_sekret;
        prm = _params.split("#");
        temp = prm.join("&");
        prm.sort();
        _sig = _viewer_id+prm.join("")+_secret;
        _md5 = encrypt(_sig);
        txt1.text=_sig;
        _addr = "http://api.vkontakte.ru/api.php?"+temp+"&sig="+_md5;
        LVgetProfiles.sendAndLoad(_addr,this[SV],"POST");
}

В чем может быть ошибка? Заранее спасибо.

temofony 14.04.2011 08:27

// и сделаем запрос следующим образом
GetProfiles("XMLProfile",_root.viewer_id,"sex,photo")

Это еще что за дребедень.Откуда она вызывается?В ас 2 нету такой функции))Нужно наверно создать объект соотв. класса из апи

kashirin 14.04.2011 10:51

Ты наверное читать не очень любишь. Смотри выше. Я же написал , что функция GetProfiles из класса vkontakte.as. Этот класс содержит функции,выполняющие различные запросы на сервер api.vkontakte.ru/api.php. Класс md5 так же переписан под as2. Т.к я сделал #include я могу пользоваться соответствующими функциями этого класса. Не забывай , что это AS2 а не AS3

carrotoff 14.04.2011 11:50

а ты уверен что правильно формируешь подпись?

Код AS1/AS2:

_sig = encrypt( _viewer_id+prm.join("")+_secret);

просто у тебя такой ад в коде, что не очень понятно.

Цитата:

md5(api_id + '_' + viewer_id + '_' + api_secret)
кстати auth_key передается через flashvars, если что

Azo 15.04.2011 00:44

это мой код vkontakte.as и моЯ инструкциЯ . Я ее написал еще когда знал только ас2

сейчас многое в вконтакте апи изменилось и код конечно не самый красивый.

совет таков: на сайте вконтакте в разделе инфы длЯ разработчиков есть готовые библиотеки-классы длЯ работы под ас2, качай и enjoy


Часовой пояс GMT +4, время: 08:33.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.