Форум программистов, компьютерный форум, киберфорум
Python: Сети
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/21: Рейтинг темы: голосов - 21, средняя оценка - 4.95
Заблокирован

Клиент-сервер на сокетах

12.05.2016, 13:18. Показов 4314. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задача стоит в написании некого подобия чата. Получение на сервер работает, но хотелось бы сделать возможность обмена сообщениями клиент<->сервер. Логически понимаю, что нужно от сервера взять ответ и отправить назад клиенту, но как я не шаманил с этим, так и не понял, как это должно быть правильно сделано, дабы наконец-то заработало,прошу показать что нужно дописать в коде. Если кто может дать какие-то полезные статьи о pycrypto, стоит задача сделать шифровку через него

Клиент+Сервер:

Клиент
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# _*_ coding: utf-8 -*-
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect(('localhost', 9090))
 
 
def ecncryprion(message):
    enc_message=''
    for i in range(len(message)):
        enc_message+=chr(ord(message[i])+3)
    return(enc_message)
 
while True:
    data=input("Enter message:")
    data=ecncryprion(data)
    s.send(data.encode())
 
s.close()
Сервер
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# _*_ coding: utf-8 -*-
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(('localhost', 9090))
s.listen(100)
conn, addr = s.accept()
 
def decryprion(enc_message):
    dec_message=''
    for i in range(len(enc_message)):
        dec_message+=chr(ord(enc_message[i])-3)
    return(dec_message)
 
 
while True:
    data = conn.recv(2048).decode()
    data_dec=decryprion(data)
    if not data:
        continue
    else:
        print("Client:",addr,'\n',"Crypted message:",data)
        print(" Encryp. message:",data_dec)
            
conn.close()
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
12.05.2016, 13:18
Ответы с готовыми решениями:

Клиент - Сервер
Добрый день. Есть элементарный клиент и сервер: Клиент HOST = 'х.х.х.х' PORT = хххх s =...

Сервер-клиент
Нужно написать многопользовательский сервер. Сервер и клиент должны иметь возможность в любое время обменяться информацией. Клиент ее...

IM клиент-сервер на сокетах
есть пример коммуникации двух компьютеров на сокетах ?

1
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5970 / 3733 / 1098
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
01.05.2017, 12:16
Сервер:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# _*_ coding: utf-8 -*-
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(('localhost', 9090))
s.listen(100)
conn, addr = s.accept()
 
def decryprion(enc_message):
    dec_message=''
    for i in range(len(enc_message)):
        dec_message+=chr(ord(enc_message[i])-3)
    return(dec_message)
 
 
def ecncryprion(message):
    enc_message=''
    for i in range(len(message)):
        enc_message+=chr(ord(message[i])+3)
    return(enc_message)
 
 
while True:
    data = conn.recv(2048).decode()
    if not data:
        continue
    data_dec=decryprion(data)  #!
    print("Client:",addr,'\n',"Crypted message:",data)
    print(" Encryp. message:",data_dec)
    data=ecncryprion('ok')
    s.send(data.encode())
            
conn.close()
А клиента лучше сделать многопоточным. Один поток читает данные из сокета, второй - из клавиатуры.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.05.2017, 12:16
Помогаю со студенческими работами здесь

Чат клиент-сервер на сокетах
и все таки появилась еще одна проблема раньше все сообщения от клиентов просто оставались на сервере теперь я хотел бы чтобы сервер...

Приложение Клиент-сервер на сокетах
Есть приложение клиент сервер. Стандартная реализация, тем таких много, вот даже на киберфоруме есть...

Простой сервер-клиент на сокетах
В сокетах ещё новичок прошу строго не ругать, моя первая попытка написать что-то. Собственно проблема заключается в том, что при...

Клиент-сервер на сокетах на разных машинах
Всем здравствовать! Не могу справиться с казалось бы простой задачей. А именно - передать строку символов с одного компьютера на другой...

Бесконечный цикл в потоке (клиент-сервер на сокетах)
Добрый день! Проблема такая: создается 2 клиента в отдельных потоках, где, в свою очередь, начинает работать бесконечный цикл, в котором...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Деплой Flask приложения
py-thonny 23.06.2025
За годы работы с Flask я натыкался на одни и те же грабли достаточно часто, чтобы наконец научится их обходить. И сегодня хочу поделится опытом, который сбережет вам немало нервных клеток. Начнем с. . .
WebAssembly и контейнеры в .NET Aspire для оркестрации распределенных архитектур
ArchitectMsa 23.06.2025
Я наблюдаю, как WebAssembly (или просто WASM) постепенно выходит за рамки своего первоначального предназначения — исполнения кода на стороне браузера. Теперь эта технология проникает в серверную. . .
Непрерывная интеграция для пакета Python
Mr. Docker 22.06.2025
Было 4 часа утра пятницы, когда я выпустил новую версию нашей внутренней библиотеки для обработки данных. Релиз 0. 5. 2 содержал небольшой фикс для обработки дат в ISO формате, что может пойти не так?. . .
Продвинутый ETL на C# из OLTP БД в хранилище
stackOverflow 22.06.2025
Работая в сфере корпоративной аналитики, я постоянно сталкиваюсь с одним и тем же - нужны чистые, структурированные и, главное, свежие данные. Без них современные аналитические системы, машинное. . .
Мастер-класс по микросервисам на Node.js
Reangularity 21.06.2025
Node. js стал одной из самых популярных платформ для микросервисной архитектуры не случайно. Его неблокирующая однопоточная модель и событийно-ориентированный подход делают его идеальным для. . .
Управление Arduino из WPF приложения
Wired 21.06.2025
Зачем вообще связывать Arduino с WPF-приложением? Казалось бы, у Arduino есть собственная среда разработки, своя экосистема, свои способы управления. Однако при создании серьезных проектов. . .
Звёздная пыль
kumehtar 20.06.2025
Я просто это себе представляю: как создавался этот мир. Как энергия слипалась в маленькие частички. Как они собирались в первые звёзды, как во вселенной впервые появился Свет. Как эти звёзды. . .
Создание нейросети с PyTorch
AI_Generated 19.06.2025
Ключевое преимущество PyTorch — его питоновская натура. В отличие от TensorFlow, который изначально был построен как статический вычислительный граф, PyTorch предлагает динамический подход. Это. . .
JWT аутентификация в ASP.NET Core
UnmanagedCoder 18.06.2025
Разрабатывая веб-приложения, я постоянно сталкиваюсь с дилеммой: как обеспечить надежную аутентификацию пользователей без ущерба для производительности и масштабируемости? Классические подходы на. . .
Краткий курс по С#
aaLeXAA 18.06.2025
Здесь вы найдете все необходимые функции чтоб написать програму на C# Задание 1: КЛАСС FORM 1 public partial class Form1 : Form { Spisok listin = new Spisok(); . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru
OSZAR »