Преглед садржаја
Веб апликације су се мењале и развијале, што чини потребе корисника другачијим од тренутка када је први протокол повезивања креиран на мрежи. Следствено томе, протокол ХТТП еволуирао је годинама, али још није достигао ниво у реалном времену, попут везе ТЦП између два тима.Ова ограничења, уместо да наштете програмерима и корисницима, постала су извор мотивације и креативности, стварајући решења која нам омогућавају не само да опонашамо преносни систем у реалном времену, већ и путем ХТТП учини то готово изворно.
ВебсоцкетОвде се налази Вебсоцкет, релативно нови протокол који подржавају само најсавременији прегледачи, који нам омогућава да уклонимо сва ограничења ХТТП -а и на тај начин будемо у могућности да ефикасно комуницирамо кроз заглавља ДОБИТИ.
Вебсоцкет Још је у периоду активног сазријевања па је врло могуће да га нећемо пронаћи у новим рјешењима, на срећу у Ноде.јс већ имамо неке алате који нам омогућавају да с њима рукујемо без потребе да се ослањамо на своју генијалност за израду алата нижег нивоа.
ЗахтевиОво је напредни водич, па ћемо прво захтијевати функционалну инсталацију Ноде.јс У нашем систему можемо да погледамо овај водич пре него што наставимо да се бавимо њиме. Осим тога, биће нам потребне администраторске дозволе да бисмо могли да инсталирамо библиотеке које ћемо користити. Морамо бити упознати са концептима ЈаваСцрипт на пример позове и анонимне функције. Коначно, морамо имати уређивач текста попут Узвишени текст то нам омогућава да напишемо различите кодове који су у примерима.
За почетак креирања апликације која нам омогућава коришћење Вебсоцкетс Морамо прво изградити малу структуру, ово је врло једноставно, али неопходно, ова структура ће се састојати од:
1- Фасцикла у коју ћемо складиштити датотеке нашег пројекта.
2- Датотека под именом сервер.јс, ова датотека ће, како јој име каже, бити сервер преко којег ћемо успоставити везу у реалном времену користећи Вебсоцкетс.
3- Датотека под именом цлиент.хтмл, ова датотека ће бити интерфејс за комуникацију са нашим сервером преко претраживача, потребно је да имамо исту како бисмо могли да шаљемо и примамо одговарајуће информације.
Пошто смо сада дефинисали своју структуру, можемо почети да узимамо неколико редова кода, за то морамо почети инсталирањем спољне библиотеке тзв. вс у нашем окружењу, будући да ће нам то омогућити да користимо дотични протокол. Да бисмо инсталирали ову библиотеку, морамо само да отворимо нашу конзолу Ноде.јс, налазимо се у фасцикли у којој ће се налазити наше датотеке и постављамо следећу команду:
нпм инсталл всКада га извршимо, можемо видети следећи резултат у нашој командној конзоли:
вар ВССервер = рекуире ('вс'). Сервер, всс = нови ВССервер ({порт: 8085}); всс.он ('цоннецтион', фунцтион (соцкет) {соцкет.он ('мессаге', фунцтион (мсг) {цонсоле.лог ('Рецеивед:', мсг, '\ н', 'Фром ИП:', соцкет. упградеРек.цоннецтион.ремотеАддресс); иф (мсг === 'Хелло') {соцкет.сенд ('Иес ит воркс!');}}); соцкет.он ('цлосе', фунцтион (цоде, десц) {цонсоле .лог ('Ван мреже:' + код + '-' + опис);});});Прво што радимо је да захтевамо библиотеку вс коју смо управо инсталирали и одмах у истој инструкцији позовите вашу класу Сервер, тада креирамо инстанцу са којом ћемо креирати сервер који ради на порту 8085Овај порт може бити било шта чему имамо приступ. У овом случају 8085 се користи како не би дошло до сукоба са другим услугама које су тренутно у овом тестном окружењу.
Пошто смо дефинисали нашу инстанцу сада ћемо применити методу.на () за догађај повезивања, затим у позове из њега преносимо објекат тзв утичница, са овим ћемо примити поруке од клијента и написали смо рутину да ако примимо реч "Здраво" сервер ће вратити поруку, где ћемо заузврат такође одштампати нешто у командној конзоли. Коначно, ако прекинемо везу, имат ћемо само једну поруку на конзоли.
Када добијемо наш сервер, време је да изградимо нашег клијента, за њега у датотеци цлиент.хтмл дефинисаћемо структуру у коју ћемо поставити хтмл тагове и а ЈаваСцрипт који ће функционисати као веза до нашег сервера. Да видимо како изгледа наша датотека:
Вебсоцкетс Цлиент СубмитДео ХТМЛ је прилично једноставан, имамо унос типа текста и дугме за слање, као и а див назива излаз који је тај који ће примити информације са сервера да их покаже кориснику. Занимљива ствар долази у ознаци где прво што направимо је да направимо објекат тог типа ВебСоцкет и ми означавамо руту где је морате пронаћи, у нашем случају то је лоцалхост: 8085 и тако можемо видети да смо оно што смо радили у сервер.јс. Затим повезујемо наше елементе за слање, текст и излаз са променљивим које можемо да користимо.
Оно што ми радимо је да дефинишемо сваку од метода које можемо примити од сервера, тако да ће сваки пут када пошаљемо нешто бити записано у нашем излазу, све захваљујући методи пошаљи (). Други метод који користимо је онмессаге () који се активира само ако наш сервер одговори и додамо резултат у наш ХТМЛ.
На крају користимо методе онцлосе () И онеррор (), први нам даје поруку када се повеже са Вебсоцкет је заустављен или затворен, а други нас обавештава у случају да је дошло до грешке. Овим морамо само да покренемо сервер на нашој конзоли и применимо наш пример, за то користимо следећу команду:
чвор сервер.јсОво ће покренути сервер, али да бисмо проверили функционалност нашег кода, морамо извршити датотеку цлиент.хтмл у нашем прегледачу по избору и написати нешто у оквир за текст и притиснути дугме за слање, ово ће генерисати комуникацију са вебсоцкет а одговор можемо видети помоћу конзоле:
Оно што смо показали један је од најосновнијих и ручних начина који постоје, али нам помаже да знамо какав је ток посла, али права функционалност спремна за производна окружења постиже се библиотеком соцкет.ио, ово ради исто што смо урадили у водичу, али у много компактнијем и мање склоном грешкама програмера, што нам омогућава да се фокусирамо само на логику апликације, а не толико на њен технички део.
За инсталацију соцкет.ио морамо само да урадимо а нпм инсталл соцкет.ио и овим ћемо из спремишта преузети најновију стабилну верзију библиотеке, што ће нам омогућити да започнемо наш развој.
Овим смо завршили овај водич, са којим смо направили важан корак Ноде.јс знајући како се користи Вебсоцкетс, ова технологија сваким даном постаје све важнија јер нам помаже у стварању апликација о којима се никада није размишљало на вебу. Такође је важно да се документујемо о протоколу јер је то начин разумевања потенцијала онога што можемо постићи једноставним развојем апликација.