Класс?

Обсуждение и помощь по вопросам взаимодействия с ВКонтакте API в Flash-приложениях (ActionScript)
Ответить
eko
Сообщения: 36
Зарегистрирован: 14 окт 2009, 17:40

Класс?

Сообщение eko »

Это Actionscript2...

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

import MD5; class Main {  var API_ID = "1";  var API_SECRET = "5445465456";  var API_SERVER_URL = "http://api.vkontakte.ru/api.php";  var API_REQUEST_METHOD = "POST";  var API_TEST_MODE = false;   private var _viewer_id: Number;  private var _request_params: Array;    function dataProvider()  {    _request_params = new Array();    _request_params["api_id"] = API_ID;    _viewer_id = parseInt(_root.viewer_id);    if (API_TEST_MODE) {      _viewer_id = 17543617;      _request_params["test_mode"] = "1";    }  }      /**   * Sends user's score   *   */  public function sendScore(score:Number, onComplete:Function)  {    _sendRequest("setUserScore", {params:{score:score}, onComplete:onComplete});  }    /**   * Retreives users ratinf   *   */  public function getUsersRating(onComplete:Function)  {    _sendRequest("getHighScores", {onComplete: onComplete})  }        /********************   * Private methods   ********************/     /**  * Sends request to the server  *  */  private function _sendRequest(method:String, options:Object)  {    var response:XML = new XML();    response.ignoreWhite = true;    if (options.onComplete);    response.onLoad = options.onComplete;    var request:LoadVars = new LoadVars();        var request_params:Object = {      method: method    };        for (var key in _request_params)    {      request_params[key] = _request_params[key];    }    for (var key in options.params)    {      request_params[key] = options.params[key];    }        request["sig"] = _generate_signature(request_params);    for (var key in request_params)    {      request[key] = request_params[key];    }        request.sendAndLoad(API_SERVER_URL, response, API_REQUEST_METHOD);  }     /**  * Sorts array by keys  *  */  private function _sort_array_by_keys(aInput: Object)  {    var aTemp = new Array();    for (var sKey:String in aInput)      aTemp.push([sKey, aInput[sKey]]);        aTemp.sort(function () {      return arguments[0][0] < arguments[1][0]}      );    var aOutput = new Array();    for (var i:Number = aTemp.length - 1; i >= 0; i--)    {      aOutput[aTemp[i][0]] = aTemp[i][1];    }    return aOutput;  }    /**   * Generates request signature   *   */  private function _generate_signature(request_params) {    var signature = "";    var sorted_array = _sort_array_by_keys(request_params);       // Note: make sure that the signature parameter is not already included in    //       request_params array.    for (var key in sorted_array)      signature = key + "=" + sorted_array[key] + signature;          signature = _viewer_id + signature + API_SECRET;    return MD5.encrypt(signature);  } }
С такой библиотекой я могу организовать метод getVariable, putVariable, getProfiles????
если

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

public function getVariable(scoc:Number, onComplete:Function)  {    _sendRequest("getVariable", {params:{scoc:scoc}, onComplete:onComplete});  }
Последний раз редактировалось eko 02 июн 2010, 13:42, всего редактировалось 2 раза.
Аватара пользователя
bodnar
Модератор
Модератор
Сообщения: 1399
Зарегистрирован: 03 апр 2010, 06:41

Re: Класс?

Сообщение bodnar »

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

Re: Класс?

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

eko
Пробовал? Если библиотека рабочая, то по логике должно работать.
eko
Сообщения: 36
Зарегистрирован: 14 окт 2009, 17:40

Re: Класс?

Сообщение eko »

Ну да...Все работает...
Спасиб
Ответить