|
0 / 0 / 1
Регистрация: 20.01.2013
Сообщений: 44
|
|
Предать запрос серверу и обработав на сервере вернуть результат04.09.2014, 13:03. Показов 1670. Ответов 13
Метки нет (Все метки)
Здравствуйте. Нужно написать что то вроде защищённого канала. Я запускаю программу, она отправляет запрос серверу, сервер обрабатывает полученную информацию и отправляет обратно ответ и т.д.
Дело в том, что я новичок в программировании таких приложений. Не знаю как отправить запрос, как отловить его на сервере и обработать, отправить ответ. Есть программа на с++, которая работает с текстовыми файлами(Для проверки работоспособности). Мне нужно перенести её в сеть. Посоветуйте, пожалуйста, какую-нибудь литературу, где бы я мог ознакомиться с тем как это делается.
0
|
|
| 04.09.2014, 13:03 | |
|
Ответы с готовыми решениями:
13
Обработав в модели, как вернуть данные? Результат колбэка вернуть как результат функции |
|
|
|
| 04.09.2014, 23:56 | |
|
Читай про
сокеты http://club.shelek.ru/view.php?id=29 и про протоколы https://ru.wikipedia.org/wiki/... %EB%FC_OSI
1
|
|
|
0 / 0 / 1
Регистрация: 20.01.2013
Сообщений: 44
|
|
| 05.09.2014, 10:43 [ТС] | |
|
Да, спасибо, но можно где нибудь почитать по подробнее, про сокеты на с++?
0
|
|
|
|
|
| 05.09.2014, 13:14 | |
|
В С++ нет сокетов, сокеты это средства OC так что если винда, первоисточник- http://msdn.microsoft.com/en-u... 85%29.aspx
1
|
|
|
0 / 0 / 1
Регистрация: 20.01.2013
Сообщений: 44
|
|
| 05.09.2014, 14:12 [ТС] | |
|
Понятно. Буду разбираться.
0
|
|
|
0 / 0 / 1
Регистрация: 20.01.2013
Сообщений: 44
|
|
| 09.09.2014, 18:51 [ТС] | |
|
Я тут поразбирался... и мне опять требуется помощь. Использую многопоточный блокирующий сокет. Подскажите пожалуйста, мне нужно что бы клиент подключался к серверу и пользователь через клиент обменивался введённой информацией. Ну, к примеру, пусть будет консольное приложение. Клиент успешно подключается к серверу и выводит на экран, к примеру,
команды 1 - отправить что то серверу. 2 - запросить что то у сервера. 0 - закрыть соединение. Но проблема в том, что я не знаю как известить сервер или клиент о завершении передачи сообщения. Т.е. функция recv получает информацию и тупо зависает навсегда, ожидая ещё информацию. Проверка на возвращение функцией recv нуля, как я понял, работает только когда соединение после передачи разорвано, а мне как раз нужно что бы соединение оставалось. Как это делают в реальных приложениях? специальный символ(слово) в конец сообщения и на другой стороне отлавливать? Но а если сообщение каким-нибудь образом не дойдёт? Или ещё читал о решении с запуском таймера... Причём нужно обрабатывать более 1000 подключений. Может вообще нужно перейти на неблокирующий режим? Добавлено через 57 минут Да, забыл написать. Использую WinSock
0
|
|
|
|
||||||||||||||||
| 09.09.2014, 19:16 | ||||||||||||||||
|
Можно по разному реализовать, это от ситуации зависит.
К примеру можно "договорится" что команды будут слаться строкой из 256 символов или по разделителю строк \r\n Эта "строка" будет содержать смысл команды и размер данных передаваемых следом за командой. К примеру
Но от сервера будет требоваться знать команды и уметь их обрабатывать(парсить), я привел команды текстового вида но в принципе можно использовать и в бинарном виде. Также вероятно стоит установить таймауты чтения, что бы сервер мог обрубать клиентов которые тупо висят и ничего не делают.
1
|
||||||||||||||||
|
0 / 0 / 1
Регистрация: 20.01.2013
Сообщений: 44
|
|
| 09.09.2014, 19:24 [ТС] | |
|
Ок, спасибо! Буду пробовать.
0
|
|
|
|
|
| 09.09.2014, 19:27 | |
|
Как пример можешь посмотреть почтовый протокол https://ru.wikipedia.org/wiki/... 0.B8.D0.B8
0
|
|
|
0 / 0 / 1
Регистрация: 20.01.2013
Сообщений: 44
|
|
| 09.09.2014, 19:27 [ТС] | |
|
А, да, насчёт передачи в бинарном виде. Можно поподробней?
0
|
|
|
0 / 0 / 1
Регистрация: 20.01.2013
Сообщений: 44
|
|
| 09.09.2014, 19:35 [ТС] | |
|
Не, я не то имел в виду. У функции send второй параметр - буффер типа const char FAR. И как мне в него запихать или указать на бинарное представление строки или числа?
0
|
|
|
0 / 0 / 1
Регистрация: 20.01.2013
Сообщений: 44
|
|
| 09.09.2014, 20:03 [ТС] | |
|
А, да, точно!
0
|
|
| 09.09.2014, 20:03 | |
|
Помогаю со студенческими работами здесь
14
Вернуть список файлов на сервере
array_walk вернуть результат
Вернуть результат запроса Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|