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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 11.04.2013, 05:13
zzSpirit вне форума Посмотреть профиль Отправить личное сообщение для zzSpirit Найти все сообщения от zzSpirit
  № 1  
Ответить с цитированием
zzSpirit
 
Аватар для zzSpirit

Регистрация: Jan 2013
Адрес: Москва, Сходня
Сообщений: 41
По умолчанию Хранение массивов на серверах ВК

Наверняка данный вопрос обсуждался, но найти не получилось...
знаю как хранить переменные, можно конечно сделать цикл преобразования массива в переменные, но а если массив двумерный или трехмерный? Это уже слишком геморойно получится... + 3 запроса в секунду осложняют проблемы.

Очень надеюсь что не нужно свое серверное приложение писать

Добавлено через 30 минут
Обьясню на примере:
Купил пользователь машину в игре, по умолчанию ее параметры такие:
кол-во бензина = 30 литров
скорость = 200 км/ч

1). Где хранить эти параметры? Можно ли на серверах ВК?
2). Сейчас у метода есть глобальные и пользовательские переменные, раньше было больше видов: глобальные, пользовательские, переменные сессии и т.д. Куда они делись? Теперь пользовательские переменные вообще никогда не обнуляются?


Последний раз редактировалось zzSpirit; 11.04.2013 в 05:25.
Старый 11.04.2013, 07:37
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 2  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Такие данные лучше не хранить на серверах вк. Их слишком легко подменить. Любой мало мальски соображающий флешер сможет это сделать. Подобные данные нужно хранить на собственном сервере с обязательной валидацией перед записью.

А вообще, по теме, нельзя на серверах вк хранить ни массивы, ни что либо другое кроме строк.
Есть два выхода, либо придумать свой формат строки, в котором будут храниться нужные данные. Например
Код AS3:
var str:String = "30|200
а при получении парсить как-то так:
Код AS3:
var arr:Array = string.split("|");
var gas:int = parseInt(arr[0]);
var speed:int = parseInt(arr[1]);
Либо, еще один вариант, сохранять JSON строки (по-моему более удобный вариант, но и более объемный по количеству данных)
Код AS3:
var settings:Object = new Object(); 
settings.gas = 30;
settings.speed = 200;
var str:String = JSON.encode(settings); // и вот эту строку посылать серверу контакта
 
// обрабатывать при получении в обратном порядке
var settings:Object = JSON.decode(str);
trace(settings.gas, settings.speed);

Старый 12.04.2013, 04:41
zzSpirit вне форума Посмотреть профиль Отправить личное сообщение для zzSpirit Найти все сообщения от zzSpirit
  № 3  
Ответить с цитированием
zzSpirit
 
Аватар для zzSpirit

Регистрация: Jan 2013
Адрес: Москва, Сходня
Сообщений: 41
Мда... Растроился я, что все так сложно.

На счет первого варианта - приходил он мне в голову, т.к. на PHP что-то подобное делал. Но там размеры строк ограничены и хранить массив в одной строке не очень хорошая идея.
Второй вариант понравился красотой, но та же проблема на счет объема.

Вижу один выход - писать свой сервер, благо PHP и MySQL знаю, буду практиковаться, помоему не очень сложная задача.

Но есть вопросы:
1). Зачем нужны сервера ВК, если на них можно подменить данные и что там тогда хранят обычно?
2). И всетаки, куда переменные ВК делись, которые сессионные? Теперь 2 варианта переменных - глобальные и пользовательские. Пользовательские теперь хранятся вечно и не обнуляются?

Старый 12.04.2013, 07:23
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 4  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
Зачем нужны сервера ВК, если на них можно подменить данные и что там тогда хранят обычно?
Кроме кэповского ответа ничего больше сказать не могу. Они нужны для хранения данных которые не нужно подменять )
У меня есть приложение для изучения немецкий слов. И на контактовских серверах хранится статистика об изученных словах, которая доступна только пользователю. Их нет смысла подменять, ибо нужны они только самому пользователю. Никакого профита от их подмены он не получит.
Цитата:
Но там размеры строк ограничены и хранить массив в одной строке не очень хорошая идея.
Ограничены 4 мегабайтами. Более, чем достаточно для хранения любых строк. Надо использовать не методы setVariable / getVariable (или как там, точно не помню), а storage.set и storage.get

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

Регистрация: Jan 2013
Адрес: Москва, Сходня
Сообщений: 41
Цитата:
Сообщение от caseyryan Посмотреть сообщение
Кроме кэповского ответа ничего больше сказать не могу. Они нужны для хранения данных которые не нужно подменять )
У меня есть приложение для изучения немецкий слов. И на контактовских серверах хранится статистика об изученных словах, которая доступна только пользователю. Их нет смысла подменять, ибо нужны они только самому пользователю. Никакого профита от их подмены он не получит.

Ограничены 4 мегабайтами. Более, чем достаточно для хранения любых строк. Надо использовать не методы setVariable / getVariable (или как там, точно не помню), а storage.set и storage.get
Да, storage и использую, устаревшие уже даже из документации убрали и из той и из другой.
Вроде все понятно, спасибо!

Добавлено через 9 часов 30 минут
Думал как данные на ВК серверах можно подменить, специально спрашивать не стал, т.к. знаю что сам до этого дойду. Вроде догадался:
1). Создается свое приложение
2). Вставляем вместо тестовых данных своего приложения ID другого приложения
3). Каким-то образом находятся кеи тех переменных, которые нужно подменить
4). подменяем

Правильно?

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

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Не обязательно для этого создавать какое-то приложение. Есть программы для перехвата запросов. Таких программ пруд пруди. Перехватывается запрос, заменяются все данные на нужные, и отправляется. Вот и все дела.
В случае использования своего сервера, почти всегда можно каким-то образом проверять пришедшие данные, и не давать им попасть в базу, если данные не верны.

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

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

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


 


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


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