| Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
| Как прехвърляте двоични данни през HTTP? http://mcu-bg.com/mcu_site/viewtopic.php?f=3&t=3449 |
Страница 1 от 2 |
| Автор: | abramabra [ Чет Дек 21, 2006 2:29 am ] |
| Заглавие: | Как прехвърляте двоични данни през HTTP? |
Как прехвърляте двоични данни през HTTP? От известно време съм решил вместо ASCII да си изпращам данните от контролера двоично, но не мога да го направя. Четох в тия два форума, но явно и там не е ясно: http://forums.data.bg/viewtopic.php?t=1085158 http://clubs.dir.bg/showthreaded.php?Board=php&Number=1946625554&page=0&view=collapsed&sb=5&part= Разбира се, тук става дума за JS и PHP, но ако мога да го схвана на JS, ще си направя и ХТТП-то на микроконтролера. PS Интересува ме управлението на протокола, езика и контролера са без значение. |
|
| Автор: | Dimitar [ Чет Дек 21, 2006 7:44 am ] |
| Заглавие: | |
Реално погледнато пращаш байтове - дали ще са кодирани символи или нещо друго - все са двоични |
|
| Автор: | Цецо [ Чет Дек 21, 2006 9:34 am ] |
| Заглавие: | |
Човека, просто е чел от страница дето е описвано за JS. Едва ли има идея да пуска JS на желязото. Аз не съм голям експерт по мрежови комуникации, ама ако просто ще се прехвърлят данни от ПЦ към желязо- тогава за какво ни е да се "качваме" до HTTP? Не може ли на TCP/IP да си седи? |
|
| Автор: | abramabra [ Чет Дек 21, 2006 10:25 am ] | ||||||||||||||||||
| Заглавие: | |||||||||||||||||||
"Реално" погледнато единствената разлика е, че ако са кодирани (аски ило байс64 или както и да е) се изпраща подмножество на [0..255], а не всички възможни стойности. Това е относно "основи на кодирането" Не се засягам, но те моля да четеш поста ми - не съм писал, че ще програмирам контролера си на JS, просто реализацията на HTTP-то е по-лесно да се пробва на JS, а след това контролера мога да го програмирам и на машинен код - писал съм, че това не е интересно в случея. Повтарям - ако някой знае решение за контрол на двоични стриймове през HTTP на какъвто и да е език - ще ми свърши работа.
Ами от едната страна е нормален ВЕБ хост с ВЕБ сървър с PHP, а микроконтролерът (от другата страна |
|||||||||||||||||||
| Автор: | Реконструктор [ Чет Дек 21, 2006 12:06 pm ] |
| Заглавие: | |
HTTP е поне 5 слоя над хардуера (хардуер->PPP(или подобно за серийна връзка)->TCP/IP->sockets->HTTP). Не мисля, че е разумна идея. |
|
| Автор: | t_i_t_o [ Чет Дек 21, 2006 1:02 pm ] |
| Заглавие: | |
Спред мен единствения ти начин на прехвърляш просто бин дата между двете е като представяш датата като файл, т.е. за да вземе контролера от сървъра дани трябва да свали от наго например филе1: GET file1 HTTP/1.0\r\n\r\n, после чакаш да ти върне файла и го приемаш като изпускаш водещите паразитни символи. За да изпратиш данни към сървъря трябва да използваш upload form която да изпратиш на сървъра с файла където той очаква. Ако са малки данните, по добре ги кодирай например в 0х0000 формата и после ги превърни отново в бин дата в двете страни и използваи направо гет/пост заявките за обмяна на променливи със сървъра. |
|
| Автор: | abramabra [ Чет Дек 21, 2006 1:16 pm ] | |||||||||
| Заглавие: | ||||||||||
Поясни ми как с upload form да изпратя двоичните данни. А обемът е от порядъка на 8к, ако го кодирам base64 ще стане 10-11к. (какво е 0х0000 - да не е всеки байт да се коддира катоп два аски символа?) |
||||||||||
| Автор: | abramabra [ Чет Дек 21, 2006 1:17 pm ] | |||||||||
| Заглавие: | ||||||||||
Кое мислиш, че е неразумно? Да си свързвам хардуера с WEB сървър ли? Не те разбирам, реконструкторе |
||||||||||
| Автор: | Реконструктор [ Чет Дек 21, 2006 1:24 pm ] | ||||||||||||||||||
| Заглавие: | |||||||||||||||||||
Да пишеш и използваш веб-сървър на mcu. |
|||||||||||||||||||
| Автор: | t_i_t_o [ Чет Дек 21, 2006 1:31 pm ] |
| Заглавие: | |
Идеята е че с ъплоад форм се доставя какъвто и да е файл от ХТТП клиента до сървъра, т.е. сървъра не прави никакво парсване на файла (в което явно ти си заинтересуван), твоя контролер(клиент) вместо файл ще изпрати данните които иска, но ще каже на сържъра че просто прави файл уплоад като сложи какво да е име за файла който ъплоадва. В същност ако контролера изпраща различни по смисъл данни, то "името" на файла може да се използва сървъра да разбира какво му праща контролера. За повече инфо за ъплоад форми предполагам това ще свърши работа: гоогле - > html tutorial upload form |
|
| Автор: | abramabra [ Чет Дек 21, 2006 1:50 pm ] | |||||||||||||||||||||||||||
| Заглавие: | ||||||||||||||||||||||||||||
и WEB сървъри ма MCU съм правил (и далеч не само аз - доста са популярни напоследък), но тук не става дума за това. Става дума MCU WEB клиент да изпраща по няколко килобайта (през GPRS, но не е съществено) на "нормален" WEB сървър. |
||||||||||||||||||||||||||||
| Автор: | abramabra [ Чет Дек 21, 2006 2:01 pm ] | |||||||||
| Заглавие: | ||||||||||
Идеята е ясна, да влезе убития Мерси и за урока по търсене с "гоогле" |
||||||||||
| Автор: | t_i_t_o [ Чет Дек 21, 2006 2:42 pm ] | ||||||||||||||||||
| Заглавие: | |||||||||||||||||||
Ако се надяваш да ти направя проекта или да ти давам уроци по ХТМЛ няма да стане - аз също си имам работа. Оше един съвет за гугъл - не се надявай да намериш отговор на въпростите ти в БГ сайтове от мързел да не четеш на английски. |
|||||||||||||||||||
| Автор: | valioman [ Чет Дек 21, 2006 3:13 pm ] |
| Заглавие: | |
Предполагам че има и инсталиран на сървъра MySQL !!! Ако има не знам кво е сложното да си напишеш софтче което да си комуникира по TCP/IP с контролера и да си инсъртваш в таблицата с данните които после изобразяваш с PHP-то. Знам че не е по темата ти но така е по просто мисля Поздрави!!! |
|
| Автор: | Реконструктор [ Чет Дек 21, 2006 3:32 pm ] | |||||||||
| Заглавие: | ||||||||||
Ясно, значи става дума за обратната посока. В случая HTTP слоя е напълно излишен, няма никакви плюсове, за разлика от минусите, които са доста. |
||||||||||
| Страница 1 от 2 | Часовете са според зоната UTC + 2 часа [ DST ] |
| Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |
|