3 / 3 / 1
Регистрация: 26.10.2010
Сообщений: 42
|
||||||||||||||||||||||||||
1 | ||||||||||||||||||||||||||
Правильный socket send и json05.01.2015, 22:38. Показов 12191. Ответов 4
Метки нет (Все метки)
Хочу через socket бросит объект dict, для этого делаю его:
С другой стороны:
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-18: ordinal not in range(128) потому что объект в unicode Прогонять словарь в цикле и делать для каждого поля encode ну мне кажется как-то не правильно. Есть способ получить объект в той же кодировке что изначально был передан?
0
|
05.01.2015, 22:38 | |
Ответы с готовыми решениями:
4
Assembler linux. Socket recv and socket send invalid arguments Socket Send и Recieve SOCKET: send(), recv() Send struct from socket Вылет при socket.send() |
42 / 42 / 7
Регистрация: 15.07.2012
Сообщений: 98
|
|
05.01.2015, 23:53 | 2 |
pickle ?
0
|
224 / 209 / 63
Регистрация: 26.05.2011
Сообщений: 363
|
||||||
06.01.2015, 02:39 | 3 | |||||
Вы версию python'а не указали.
Для 3.х: Функции send и recv работают с байтами, поэтому процесс кодирования и декодирования необходим.
0
|
3 / 3 / 1
Регистрация: 26.10.2010
Сообщений: 42
|
||||||
07.01.2015, 23:18 [ТС] | 4 | |||||
К счастью на pickle как раз все работает, но хочется разобраться, ведь с json тоже надо работать.
python 2.7 pyuser, попробовал, к сожалению все равно данные приходят в utf-8 У меня чувство что из-за того что raw_data это обьект dict там decode не действует. Добавлено через 10 минут хм. похоже действительно делаю что-то не правильно, вот из консоли:
Правильно понимаю что это особенность JSONDecoder? из str в python через load в любом случае получаем utf-8 https://docs.python.org/2/libr... o-py-table
0
|
363 / 334 / 38
Регистрация: 29.03.2011
Сообщений: 838
|
|
08.01.2015, 13:44 | 5 |
InventoR, это особенность спеков: валидная json-строка обязана быть в юникоде.
0
|
08.01.2015, 13:44 | |
08.01.2015, 13:44 | |
Помогаю со студенческими работами здесь
5
Send/recv on listener socket Как избежать зависания на Socket.Send()? Socket не отсылает сообщения через SEND и не принимает Client Socket Send Text В разных переменных Отправка сообщений клиенту командой Socket.Send Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |