|
|
|
Socket: как серверу отправить картинку(1.JPG) клиенту?
|
|||
|---|---|---|---|
|
#18+
Приветсвую всех! Пытаюсь разбраться с механизмами сокетов - написал простенький сервер, который парсит запрос от клиента(браузера-IE) и возвращает что-то - текст, картинку(здесь проблемма). например: запустил сервер, набрал в IE http://localhost:8989/1.txt - сервер ищет 1.txt в своем руте, считывает по-строчно Так вот когда файл текстовый, то все нормально, а вот когда картинка - то в браузере отображается что то похожее на первоначальный файл(1.gif), но не то. И еще - почему то только маленькие файлики(т.е. размер не очень большой) передаются (2-3 кб). Может кто скажет где ошибка? Код: plaintext 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. 33. 34. 35. 36. 37. 38. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2006, 14:30:31 |
|
||
|
Socket: как серверу отправить картинку(1.JPG) клиенту?
|
|||
|---|---|---|---|
|
#18+
Dodikusв браузере отображается что то похожее на первоначальный файл(1.gif), но не то. Так в чём отличие :O А кто слушает этот сокет? И вообще, кажется, для описанного случая сокет не нужен и только усложняет ситуацию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2006, 14:56:04 |
|
||
|
Socket: как серверу отправить картинку(1.JPG) клиенту?
|
|||
|---|---|---|---|
|
#18+
изврат... но если очень хочеца, то дерзай! замени Reader, он для текста ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2006, 15:08:32 |
|
||
|
Socket: как серверу отправить картинку(1.JPG) клиенту?
|
|||
|---|---|---|---|
|
#18+
LINUXER Dodikusв браузере отображается что то похожее на первоначальный файл(1.gif), но не то. Так в чём отличие :O А кто слушает этот сокет? И вообще, кажется, для описанного случая сокет не нужен и только усложняет ситуацию. 1. Ну т.е. квадратик рисунка показывается, он заполнен разноцветными точками, которые на первоначальное изображение не похоже вообще. 2. Это код сервера(точнее метода run,класса HttpRequestHandle, который уже работает с Socket'м - здесь парсятся входящий запрос и выдается ответ) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2006, 15:11:59 |
|
||
|
Socket: как серверу отправить картинку(1.JPG) клиенту?
|
|||
|---|---|---|---|
|
#18+
am_sasaизврат... но если очень хочеца, то дерзай! замени Reader, он для текста Во, я и не знал, а на что? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2006, 15:14:12 |
|
||
|
Socket: как серверу отправить картинку(1.JPG) клиенту?
|
|||
|---|---|---|---|
|
#18+
Dodikus am_sasaизврат... но если очень хочеца, то дерзай! замени Reader, он для текста Во, я и не знал, а на что? Не то чтобы для текста, но он читает символы(буферезированные), а FileReader, InputStreamReader - байтики(бинарно) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2006, 17:14:41 |
|
||
|
Socket: как серверу отправить картинку(1.JPG) клиенту?
|
|||
|---|---|---|---|
|
#18+
LINUXERИ вообще, кажется, для описанного случая сокет не нужен и только усложняет ситуацию. ой, для хттп-сервера конечно нужен сокети поток буферезированный можно попробовать юзать new DataOutputStream(connectionsocket.getOutputStream()); ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2006, 17:34:22 |
|
||
|
Socket: как серверу отправить картинку(1.JPG) клиенту?
|
|||
|---|---|---|---|
|
#18+
Ну т.е. его проблема в том что Reader читает из gif-а не байты, а символы? И соответственно на выходе получаем не первоначальную последовательность байтов gif-а, а покоцанную, т.к. они читались парами(символ=2байта), затем приводились к кодировке по-умалчанию и потом только выводились? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.10.2006, 02:25:02 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=34083981&tid=2147665]: |
0ms |
get settings: |
11ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
157ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 225ms |
| total: | 460ms |

| 0 / 0 |
