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

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

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

Регистрация: Apr 2013
Сообщений: 82
По умолчанию Обрисуйте чёрты бинарного сокета

Работаю с бинарным сокетом. Стоит задача - организовать передачу объектов между двух клиентов. Поиск информации в интернете дал веьма ограниченую информацию, которая пока не помогла достичь результата. Но вот что мне понятно:
Для получения текстовой информации в собственно сокете используется вот такой код
Код:
public void sendMessage(String message, long uid) throws Exception {
        // json с сообщением...
        JSONObject messageJSON = new JSONObject();
        messageJSON.put("uid", uid);
        messageJSON.put("textt", textt);
}
т.е. явно указано, что ловит - String message, long uid, а как быть с передачей объектов?

Вот как с передачей информации про объекты классов, и их местанахождение? Мне попалась информация, что для каждого объекта должен быть отдельно на сервере класс (но это как по мне, бред сывой кобылы).
Так же прошу глянуть, правильно ли отправляю объект и подсказки, как отправить координаты
Код AS3:
// массив байт для посылки...
            var bizon:Bizon = new Bizon ();
            var sendBytes:ByteArray = new ByteArray();
 
            // байты самого сообщения...
            var mBytes:ByteArray = new ByteArray();
            // запишем сюда строку...
            mBytes.writeUTFBytes(bizon);
 
            // запишем длину сообщения...
            sendBytes.writeInt(mBytes.length);
            // запишем сам массив байт сообщения...
            sendBytes.writeBytes(mBytes);
 
            // отошлем байты...
            _socket.writeBytes(sendBytes);
            _socket.flush();
И прошу глянуть, правильный ли приём:
Код AS3:
var user_message:String = _buffer.readUTFBytes(_length);
var decodedMessage:Object = JSON.parse(user_message);
var bizonp = decodedMessage.bizon;
addChildAt(bizonp, 4);

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

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
а как быть с передачей объектов?
Каких объектов? То, что у вас передается с флешки на сервер, будет строкой. Object в as3 и Object в Java - Это совершенно разные вещи. В джаве, для реализации подобного функционала используются объекты с интерфейсом Map, но это лишь очень отдаленно можно сравнивать с объектами в as3.
Поэтому для передачи as3 Object джава серверу, сначала перегоняем его в JSON строку, а потом эту строку посылаем на сервер. А там уже парсим строку
__________________
Ко мне можно и нужно обращаться на ты)

Старый 03.06.2014, 11:58
ChuwY вне форума Посмотреть профиль Отправить личное сообщение для ChuwY Посетить домашнюю страницу ChuwY Найти все сообщения от ChuwY
  № 3  
Ответить с цитированием
ChuwY
 
Аватар для ChuwY

Регистрация: Nov 2009
Адрес: Тула / Москва
Сообщений: 734
Отправить сообщение для ChuwY с помощью ICQ Отправить сообщение для ChuwY с помощью Skype™
Или смотрим в соседнюю тему, где один товарищ предложил решение подобной проблемы.
__________________
9 из 10 голосов в моей голове сказали наркотикам "НЕТ"
Мои ачивки: художник-паразит.

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

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

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


 


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


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