Отговори на тема  [ 9 мнения ] 
http сървер, може би 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Фев 07, 2012 10:22 pm
Мнения: 3074
Мнение http сървер, може би
Имам "C" написано приложение на Уиндоус- получава данни от няколко устройства . Приложението може да работи като сървер - например за същото приложение , търсещо устройствата на адреса/порта на първото приложение - тоест имам някакви сървер и клиент сокети работещи. Оказа се ,че ще е добре да
мога да покажа данните на екрана на браузер. Данните са 50-60 променящи се числа/стринга.
Някой да има идея за бързо и лесно вграждане на http сървер?


Сря Окт 21, 2015 7:29 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Ное 27, 2012 8:27 pm
Мнения: 2008
Мнение Re: http сървер, може би
По скоро ти трябва скрипт за хтмл който слуша сървъра


Сря Окт 21, 2015 7:45 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Авг 23, 2005 11:02 am
Мнения: 3070
Местоположение: София
Мнение Re: http сървер, може би
Аз нищо не разбрах от въпроса, освен че искаш да вграждаш сървър в нещо.


Сря Окт 21, 2015 9:43 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Окт 11, 2011 10:53 pm
Мнения: 4174
Местоположение: Brussels / Пловдив
Мнение Re: http сървер, може би
Виж монгоозе - https://github.com/cesanta/mongoose (лиценза му е малко ГПЛ - но има и форк откакто беше с МИТ лиценз де https://github.com/civetweb/civetweb )
След това правиш HTTP JSON REST API - имплементира се сравнително лесно на сървъра.
И някакъв JS framework който да работи в браузъра със съответната поддръжка на JSON REST (angular например).

_________________
Мразя да мразя ...


Сря Окт 21, 2015 9:51 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4671
Мнение Re: http сървер, може би
Apache-PHP-MySQL
device: HTTP SEND/POST
по лесно и бързо - няма

_________________
main[-1u]={1};


Чет Окт 22, 2015 5:27 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4671
Мнение Re: http сървер, може би
TheWizard написа:
Apache-PHP-MySQL
device: HTTP SEND/POST
по лесно и бързо - няма


PS: до колкото разбрах имаш няколко устройства дето мятат данни към "сървър"

_________________
main[-1u]={1};


Чет Окт 22, 2015 5:29 pm
Профил ICQ
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Фев 07, 2012 10:22 pm
Мнения: 3074
Мнение Re: http сървер, може би
Цитат:
Apache-PHP-MySQL
device: HTTP SEND/POST
по лесно и бързо - няма

PHP-MySQL съм ги чувал, Apache и HTML- по-често. :D

Имам няколко у-ва ,по сериен канал през конвертори към етернет пращат данни, намират се в един шкаф . На устройствата не мога да им добавям кой знае какво.
Писал съм програма С/ под Win/. Програмата пише по диска, визуализира данните , работи и като сървер за свое копие - клиент през сокети.
Дотук добре. В контролната стая на обекта - обаче- един огромен шкаф с контактори и контролери. Операторът има един комп/екран - гледа на браузер картинка за състоянието - някакъв вид SCADA картинка. /Интересно, в шкафа сякаш има два контролера, приличащи на нещо като Бигълборд или нещо подобно./ Не зная дали компютърът търкаля някаква SCADA или само браузер.
Компът е с Линукс .Имам 2 опции - прекомпилирам за Линукс (никога не съм го правил) или слагам още един комп . Засега ще в втората, и ми се ще на онзи браузер в друг подпрозорец да се виждат и моите данни. Програмата ми сглобява една проста html страница на всеки няколко секунди и я презаписва на диска, пуснах сървер "miniweb"
да я праща на браузерите и засега това е решението. Много е постна страницата - няколко правоъгълника с текстове и числа , но засега толкова разбирам. Другото, което ме дразни - че ползвам външен сървер за такава проста задача , данните трябва да ги записвам като файл, не виждам как чрез тоя външен сървер мога да предам обратно - от браузера към моята програма. Та това ме мъчи...


Чет Окт 22, 2015 9:52 pm
Профил
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Вто Окт 11, 2011 10:53 pm
Мнения: 4174
Местоположение: Brussels / Пловдив
Мнение Re: http сървер, може би
Не ти е сложен проблема, но си иска да инвестираш малко в разучаване как да стане. Вградени C сървъри има колкото искаш (освен mongoose/civetweb който вече ти препоръчах). Харесваш си един, линкваш го към твоята програма и след това:
- правиш една папка със статични HTML, Javascritp, CSS, JPEG, PNG и т.н. файлове които ще се пращат на браузъра - по същество това си е един веб сайт.
- добавяш колкото трябва REST routings за твоите данни т.е. конфигурираш вградения веб сървър ако дойде HTTP GET заявка на адрес /api/data да си изсмуче от пръстите каквито данни ще връщаш в JSON формат. Може да ползваш и по сложни/мощни технологии като WebSockets но там е друга бира.
- правиш си един index.html в който общо взето съдържа това което и сега записваш във този HTML файл, с разликата, че добавяш един таймер да обновява данните на всеки няколко секунди първо прочитайки от /api/data. Има доста JS frameworks които да ти направят живота лесен, но всички искат учене в началото. Аз лично харесвам AngularJS защото прави така наречения data binding и като прочетеш някакви нови данни просто ги присвояваш на една променлива, пък той автоматично си ги разнася по DOM където си му казал. Айде и един пример да дам за да стане по ясно:

JSON
Код:
{
  name: "Машина 1",
  rows: [
    { name: "Термометър 1", value: "12.3" },
    { name: "Термометър 2", value: "23.4" }
  ]
}

JS
Код:
   $interval(function(){
    $http.get("/api/data").success(function(new_data) {
       $scope.data = new_data;
    }.bind(this);
   }, 5000).bind(this);


HTML
Код:
<h1>{{data.name}}</h1>
<table>
  <tr ng-repeat="row in data.rows">
    <td>{{$index+1}}</td>
    <td><input type="text" ng-model="row.name"/></td>
    <td><input type="number" ng-model="row.value"/></td>
  </tr>
</table>

_________________
Мразя да мразя ...


Пет Окт 23, 2015 10:30 am
Профил
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Сря Апр 27, 2005 11:48 am
Мнения: 4671
Мнение Re: http сървер, може би
а ако са ти неиндексирани данните просто ги пращаш(HTTP-POST) разделени със запетайка да избегнеш JSON-a:

POST /path/index.php HTTP/1.0
User-Agent: HTTP/1.0
Content-Type: application/blah
Content-Length: bytes

DevID=9876&value1=123&value2=3
или RAW data
DevID:value1,value2,value3.....

или HTTP-SEND
http://server/?DevID=9876&value1=123&value2=3

_________________
main[-1u]={1};


Пет Окт 23, 2015 4:47 pm
Профил ICQ
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 9 мнения ] 

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 1 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни