Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > API приложений и сред

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 23.07.2010, 16:24
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 11  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Гм, это странно, написать одну единственную функцию и не париться всяко быстрее.

Старый 23.07.2010, 16:26
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 12  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Цитата:
Казалось что руками быстрее перечислить параметры запроса.
Там функция та несчастная в несколько строк получается.
Код AS3:
//
//  Copyright 2009 Vitali Sosnovski
//
//  NOTICE: You may distribute this class freely, 
//  provided it is not modified in any way (including
//  removing this header or changing the package path).
//
//  Please contact udaaff[at]gmail.com prior to distributing 
//  modified versions of this class.
//
////////////////////////////////////////////////////////////////////////////////
 
 
package by.typing.vkontakte.net
{
 
        import com.adobe.crypto.MD5;
 
        import flash.net.URLVariables;
 
        /**
         * Класс предназначен для задания параметров, передаваемых в запросе, а также 
         * для генерации сигнатуры на основании этих параметров.
         */
        public dynamic class VkontakteVariables extends URLVariables
        {
 
                //--------------------------------------------------------------------------
                //
                //  Constructor
                //
                //--------------------------------------------------------------------------
 
                /**
                 * Создает объект <code>VkontakteVariables</code>. 
                 * 
                 */             
                public function VkontakteVariables()
                {
                        super();
                }
 
 
                //--------------------------------------------------------------------------
                //
                //  Methods
                //
                //--------------------------------------------------------------------------
 
                /**
                 * Генерирует сигнатуру на основании заданных переменных. Необходимо вызывать
                 * после задания всех необходимых параметров.
                 *  
                 * @param viewer_id             Id пользователя.
                 * @param privateKey    Приватный ключ со страницы редактирования.
                 * 
                 */             
                public function buildSignature(viewer_id:String, privateKey:String):void
                {
                        // необходимо удалить, иначе неправильно вычислится hash при повторном
                        // вызове
                        delete this['sig'];
 
                        var array:Array = [];
                        for (var field:String in this)
                        {
                                array.push({ name: field, value: this[field] });
                        }
                        array.sortOn("name");
 
                        var sig:String = viewer_id;
                        for each (var o:Object in array)
                        {
                                sig += o.name + "=" + o.value;
                        }
                        sig += privateKey;
 
                        this['sig'] = MD5.hash(sig);
                }
 
        }
 
}

Старый 23.07.2010, 16:30
catcat вне форума Посмотреть профиль Отправить личное сообщение для catcat Найти все сообщения от catcat
  № 13  
Ответить с цитированием
catcat

Регистрация: Mar 2010
Сообщений: 93
Люди, да что вы все с этими параметрами запроса?
Так как проблему с русскими символами решить-то?

Старый 23.07.2010, 16:32
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 14  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Нет никакой проблемы.

Старый 23.07.2010, 16:35
catcat вне форума Посмотреть профиль Отправить личное сообщение для catcat Найти все сообщения от catcat
  № 15  
Ответить с цитированием
catcat

Регистрация: Mar 2010
Сообщений: 93
Цитата:
Нет никакой проблемы.
??? а почему тогда символы не отображаются правильно?

Добавлено через 4 минуты
Вот реальный пример сообщения:
сообщение:
Цитата:
я не знаю в чем тут дело
на стене:
Цитата:
я не знаю в чем тут дело
Что это вообще за символы?

Старый 23.07.2010, 16:42
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 16  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
Цитата:
Сообщение от etc Посмотреть сообщение
Нет, ну почему никто не догадывался сделать функцию сортировки полей по алфавиту и автоматическому вычислению сигнатуры?
У меня есть и такая и такая реализации.
Когда у тебя используются 4 метода API VK, никакого выигрыша нет.
Ни по объему кода, ни по производительности.
К тому же, эта часть приложения пишется один раз и потом вообще не открывается.

Получается, имхо, программирование ради программирования.
К тому же, с уменьшением наглядности.

Старый 23.07.2010, 17:17
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 17  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Цитата:
Сообщение от mikhailk Посмотреть сообщение
У меня есть и такая и такая реализации.
Когда у тебя используются 4 метода API VK, никакого выигрыша нет.
Ни по объему кода, ни по производительности.
К тому же, эта часть приложения пишется один раз и потом вообще не открывается.

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

Старый 23.07.2010, 17:39
mikhailk вне форума Посмотреть профиль Отправить личное сообщение для mikhailk Найти все сообщения от mikhailk
  № 18  
Ответить с цитированием
mikhailk
 
Аватар для mikhailk

Регистрация: Nov 2009
Адрес: СПб
Сообщений: 2,236
в почете
но не с API ВК.
Иногда я вообще не представляю, что за шишки они курили, когда писали некоторые вещи.

Я специально оставил у себя эту часть именно в таком виде.
Чтобы было наглядно и понятно.

Старый 23.07.2010, 17:43
Bgg вне форума Посмотреть профиль Отправить личное сообщение для Bgg Найти все сообщения от Bgg
  № 19  
Ответить с цитированием
Bgg
 
Аватар для Bgg

Регистрация: Jan 2009
Адрес: Петерсбург
Сообщений: 1,882
udaaff, да знаю я

Старый 02.11.2010, 12:20
Astraport вне форума Посмотреть профиль Отправить личное сообщение для Astraport Найти все сообщения от Astraport
  № 20  
Ответить с цитированием
Astraport
 
Аватар для Astraport

блогер
Регистрация: Sep 2009
Сообщений: 2,463
Записей в блоге: 2
Подобная проблема, только по-русски (в message= )даже не хочет публиковать на стену.

Вылезает вконтактовская ошибка "Запись не может быть добавлена на стену по неизвестной причине."

Пробовал encodeURI - не помогает.
По английски все отлично публикуется на стене.

Создать новую тему Ответ Часовой пояс GMT +4, время: 18:29.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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