|
46 / 46 / 19
Регистрация: 15.03.2009
Сообщений: 178
|
||||||
Само сообщение или вложенный файл?14.10.2009, 10:31. Показов 1425. Ответов 7
Метки нет (Все метки)
Привет всем. Делаю что-то типа обмена сообщениями.
Клиент отправляет xml-сообщение -> Сервер считывает его и отправляет "YES" - если успешно, "YES+" - если к тому же есть прикрепленные к сообщению файлы(узнает из сообщения), либо "NO" - если что-то не так. Клиент читает ответ и в случае успеха шлет прикрепленные файлы(если есть) и закрывает сокет. Если нет вложенных файлов, то все идет нормально. В общем ошибка в серверной части... не пойму как определить сообщение это или вложенный файл?
0
|
||||||
| 14.10.2009, 10:31 | |
|
Ответы с готовыми решениями:
7
Как задать произвольное окончание строки (само-ход, само-свал, само-идентификация)? Что лучше репетитор или само-учение ? Вложенный файл в форме |
|
467 / 344 / 19
Регистрация: 26.05.2009
Сообщений: 2,696
|
|
| 14.10.2009, 14:08 | |
|
А не лучше сначала посылать какой то бит указывающий дальше будет сообщение или файл, после послать размер сообщения. Отсюда вы будете знать, когда закончится сообщение.
1
|
|
|
46 / 46 / 19
Регистрация: 15.03.2009
Сообщений: 178
|
|
| 14.10.2009, 15:43 [ТС] | |
|
Неправильно объяснила. Дело в том, что сообщение и файлы (если есть) клиентская программа отправляет за один раз соединения. т.е. кнопкой "Отправить".
Сначала всегда идет сообщение. После отправки сообщения программа клиента считывает ответ (sock.Receive) и решает отправлять файлы или нет, в зависимости от ответа сервера. Затем закрывает сокет и выводит что-то типа: "Сообщение такому-то успешно отправлено\не отправлено". Получается, что первый раз сервер connection.Socket.Receive(GetBytes) поймает однозначно сообщение, а затем если что и "придет", то это будут вложенные файлы. Вот и вопрос: где выставить может быть выставлен этот счетчик?
0
|
|
|
2 / 2 / 1
Регистрация: 20.09.2009
Сообщений: 24
|
|
| 14.10.2009, 23:16 | |
|
а не лутше при окончании сообщения флаг какой нить добавлять (0 например), и если он попался инкрементировать, а лутше отдельным методом прием файла сделать
и воспользуйся дебагом, посмотри как все ето происходит
1
|
|
|
467 / 344 / 19
Регистрация: 26.05.2009
Сообщений: 2,696
|
|
| 15.10.2009, 11:25 | |
|
А вдруг в самом сообщении встретится "0 например"?
0
|
|
|
2 / 2 / 1
Регистрация: 20.09.2009
Сообщений: 24
|
|
| 16.10.2009, 02:22 | |
|
ну если юникод будешь использовать то возможно, можешь последовательность использовать
0
|
|
|
1923 / 428 / 41
Регистрация: 12.07.2007
Сообщений: 2,062
|
|
| 16.10.2009, 03:04 | |
|
Вам доступен код и клиента, и сервера?
Если да, тогда, как сказал body90, перед сообщением выставляется флаг типа сообщения и размер сообщения. Если доступен только сервер. Тогда необходимо разобраться с протоколом передачи сообщения. Ваше сообщение (вместе с вложениями) это набор байт. И для того, что бы верно интерпретировать, нужно наверняка знать сколько байт под что в этом сообщении отводится.
1
|
|
|
46 / 46 / 19
Регистрация: 15.03.2009
Сообщений: 178
|
|
| 16.10.2009, 03:35 [ТС] | |
|
Спасибо всем. Мне доступен и код клиента и код сервера. Честно говоря не совсем поняла где выставлять флаг и размер сообщения. Еще учусь
. Решила пока инкременировать сообщение по структуре его xml-файла. Получилось. Но оказалось можно выставить и счетчик сообщений если задать его начальное значение в методе Start();
0
|
|
| 16.10.2009, 03:35 | |
|
Помогаю со студенческими работами здесь
8
Записать вложенный список в файл При установке прог. или игры - окно само закрывается Вложенный Html.BeginForm баг или фича? В зависимости от переключателя на экран вывести само число или его модуль Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|