|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Jul 2004
Сообщений: 29
|
Авторизация при помощи Remote Shared Object и FlashCommServer
Всем привет! Товарищи, кто сведует, оцените пожалуйста алгоритм. Задача: регистрация/авторизация юзера с использованием Flash Communication Server.
Продукт этот пока мне в новинку, посему вижу здесь только 2 возможных решения, основанных в обоих случаях на использовании Remote Shared Object. Смысл: создается серверный шаред обжект, являющийся базой данных, храняшей пары - логин/пароль. Грамотен такой подход? Отсюда вытекает 2 способа записи/чтения данных в RSO: 1. Запись/чтение пары логин/пассворд берет на себя сервер. Т.е. мы передаем, допустим методом NetConnection.connect или вызовом серверной функции, данные введенные юзером в текстовое поле. Сервер, в свою очередь, проверив/записав данные, вызывает функцию клиента, передавая параметр "успешно авторизован" или код ошибки. 2. Функцию проверки пары логин/пароль или записи ее в файл (при регистрации) выполняет клиент. По такому принципу выполнен приведенный ниже алгоритм, написанный мной. Код работает, но верен ли такой подход? Прошу совета. (полная версия - см. в исходнике *.rar) this.client_nc = new NetConnection(); function RegisterConnectToServer() { if (!client_nc.isConnected) { this.client_nc.connect("rtmp:/TestVideoServer/Autorisation"); } // При регистрации подключаемся к серверу, если соединение еще не установлено. this.text_so = SharedObject.getRemote("account", this.client_nc.uri, true); this.text_so.connect(client_nc); this.text_so.onSync = function(list) { var ansver = root.registerUser(root.reg_mc.reg_login.text, root.reg_mc.reg_pass.text); if (ansver) { Alert.show("User register sucesfully!", "Server Message"); } else { Alert.show("Error registry! This user already consists.", "Server Message"); } delete this.onSync; }; /* Как только получено событие о синхронизации с RSO, в цикле проверяем наличие у data свойства-объекта, с собственным свойством равным значению введенному в поле password. Если оно найдено - выводим сообщение ошибки "Error registry! This user already consists.", если нет создаем новый объект в свойстве data И записываем в RSO пару логин/пароль. Удаляем обработчик. */ } registerUser = function (log, pass) { for (var i in this.text_so.data) { if (this.text_so.data[i].login == log) { return false; } } this.uniqId++; this.text_so.data["u"+this.uniqId] = new Object(); this.text_so.data["u"+this.uniqId].login = log; this.text_so.data["u"+this.uniqId].pass = pass; return true; }; То же при проверке логина (см. плиз исходник - *.rar). При получении события синхронизации с RSO (onSync) проверяем совпадение введенных данных со значением data. Последний раз редактировалось v350; 18.11.2004 в 22:49. |
|
|||||
Регистрация: Jul 2004
Сообщений: 29
|
Господа, пожалуйста уделите внимание вопросу! Nox, John, Bitsky, Штрек, sergwizard , что всех лично нужно попросить?
Сложно вникать в код? - хорошо, не надо! Хотя бы общий подход подскажите. |
|
|||||
Регистрация: Sep 2004
Сообщений: 4
|
autoris.zip битый, закачай еще раз.
|
|
|||||
Регистрация: Jul 2004
Сообщений: 29
|
Ура! Уважаемый prd2 , спасибо тебе хотя бы за проявление внимания!!!
Это rar архив, попробуй переименовать в autorize.RAR |
Часовой пояс GMT +4, время: 17:12. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|