Како да решите „Грешка: слушајте ЕАДДРИНУСЕ: адреса је већ у употреби“?

Kako Da Resite Greska Slusajte Eaddrinuse Adresa Je Vec U Upotrebi



Ноде.јс је окружење за извршавање које омогућава извршавање кода написаног у ЈаваСцрипт језику преко веб странице или локалног сервера. То је окружење са једним навојем и има асинхрону природу. Нуди различите уграђене и екстерне модуле који се могу користити за обављање различитих операција као што је слање ХТТП захтева преко сервера. Током интеракције са различитим локалним серверима постоји шанса да добијете више грешака које се решавају праћењем одређених водича.

Овај водич објашњава могуће поправке за „слушајте ЕАДДРИНУСЕ: адресу која је већ у употреби“ покривајући одељке у наставку:

Како да решите „Грешка: слушајте ЕАДДРИНУСЕ: адреса је већ у употреби“?

Грешка: слушај ЕАДДРИНУСЕ: адреса је већ у употреби ” се јавља када више апликација или задатака покушава да приступи истом порту. Ова грешка се може јавити током фазе тестирања или развоја. На пример, горе поменута грешка ће бити генерисана ради бољег разумевања:







конст екпрессОбј = захтевају ( 'изразити' )
конст демоАпп = екпрессОбј ( )
демоАпп. добити ( '/' , ( рек, рес ) => {
рес. јсон ( {
име : 'Линукхинт чланак на ЦОРС' ,
Језик : 'Ноде.јс' ,
апликација : 'цорсАпп' ,
порекло : 'Унакрсно порекло' ,
Миддлеваре : 'ЦОРС'
} )
} )
демоАпп. слушај ( 8080 , ( ) => {
конзола. Пријава ( `Сервер је покренут 'Ф03346ЕБ3А99БЕ025979045Е8ФА1А281Ц5159611' ` )
} )
демоАпп. слушај ( 8080 , ( ) => {
конзола. Пријава ( `Сервер је покренут 'Ф03346ЕБ3А99БЕ025979045Е8ФА1А281Ц5159611' ` )
} )

Горњи исечак кода функционише овако:



  • Прво увезите „ изразити ” модул и чува његов објекат у новој променљивој “ екпрессОбј ”. Користите ову променљиву као конструктор за креирање нове експресне апликације под називом „ демоАпп ”.
  • Затим креирајте ГЕТ захтев користећи „ добити() ” и поставите почетну страницу као роот руковалац преношењем „ / ” као први параметар. Други параметар је анонимна функција повратног позива која шаље „ ЈСОН ” подаци као одговор коришћењем „ јсон() ” метод.
  • Након тога, учините да се та апликација извршава преко истог броја порта „ 8080 ' два пута. Ово извршење истог порта два пута генерише поменуту грешку.

Генерисани излаз након компилације горњег кода показује појаву грешке „Грешка: слушај ЕАДДРИНУСЕ: адреса је већ у употреби“:







Постоје углавном два решења за решавање грешке која се догодила у горњем излазу, а то је промена бројева портова или заустављање једног од покренутих процеса. Али постоји и више других поправки које индиректно решавају „ Грешка: слушај ЕАДДРИНУСЕ: адреса је већ у употреби ” грешка. Ова решења заједно са практичним демонстрацијама су наведена у наставку:

Решење 1: Покрените процесе на различитим портовима

Најпрепоручљивије решење за поменуту грешку је да идентификујете бројеве портова на којима се покрећу обе услуге као што је у нашем случају „ 8080 ”. Затим насумично изаберите једну услугу и модификујте њен број порта да би услуге слушале на локалном хосту, али са различитим бројевима порта. Наш код након разматране модификације је приказан у наставку:



конст екпрессОбј = захтевају ( 'изразити' )
конст демоАпп = екпрессОбј ( )
демоАпп. добити ( '/' , ( рек, рес ) => {
рес. јсон ( {
име : 'Линукхинт чланак на ЦОРС' ,
Језик : 'Ноде.јс' ,
апликација : 'цорсАпп' ,
порекло : 'Унакрсно порекло' ,
Миддлеваре : 'ЦОРС'
} )
} )
демоАпп. слушај ( 8080 , ( ) => {
конзола. Пријава ( `Сервер је покренут 'Ф03346ЕБ3А99БЕ025979045Е8ФА1А281Ц5159611' ` )
} )
демоАпп. слушај ( 3000 , ( ) => {
конзола. Пријава ( `Сервер је покренут 'Ф03346ЕБ3А99БЕ025979045Е8ФА1А281Ц5159611' ` )
} )

Излаз генерисан након извршавања горњег кода показује да је сада „ Грешка: слушај ЕАДДРИНУСЕ: адреса је већ у употреби ” проблем је решен:

Решење 2: Заустављање процеса који се покрећу на истом порту

Други начин да се реши грешка „слушај ЕАДДРИНУСЕ: адреса је већ у употреби“ је заустављање процеса који се покрећу на одређеном порту који је већ у употреби. Ово ће учинити порт неактивним коме програмер може да приступи ради обављања одређених задатака. Овај процес заустављања се обавља уз помоћ екстерног модула под називом „ килл-порт ”.

На пример, сви процеси који се покрећу на наведеном броју порта “ 8080 ” ће бити убијени коришћењем „ килл-порт ” модул. Постоје два начина за коришћење модула „килл-порт“ и оба ова приступа су наведена у наставку:

Метод 1: Користите модул „килл-порт” након инсталације

килл-порт ” је спољни модул треће стране и да би се овај модул користио унутар пројекта ноде.јс. Овај модул треба прво да преузмете извршавањем доле наведене команде:

нпм инсталл килл - Лука - г

Слика испод приказује завршетак инсталације за „ килл-порт ' променљива:

Након инсталације, корисник може убити услуге за потребан број порта. У нашем случају, услуге броја порта “ 8080 ” ће бити убијени преко доле наведене команде:

убити - Лука -- Лука 8080

Доњи излаз потврђује да су све услуге за порт “ 8080 ” су убијени:

Метод 2: Користите модул „килл-порт” без инсталације

килл-порт ” модул се може користити без проласка кроз процес инсталације коришћењем „ нпк ” тркач пакета. На пример, „ килл-порт ” модул се користи да убије наведена два порта користећи команду покретача пакета „нпк“ која је наведена у наставку:

нпк килл - Лука 8080 9000

Доњи излаз показује да су услуге за одређене портове “ 9000 ' и ' 8080 ” су убијени:

Бонус савет: Деинсталација модула „килл-порт”.

Да бисте деинсталирали „ килл-порт ” модул глобално из система изврши доле наведену команду:

нпм унинсталл килл - Лука - г

Решење 3: Прекините Ноде.јс услуге на Виндовс-у

Ако „Грешка: слушајте ЕАДДРИНУСЕ: адреса која је већ у употреби“ и даље постоји, укините све покренуте „ ноде.јс ” услуге користећи ГУИ или ЦЛИ приступ.

Коришћење ЦЛИ приступа

Притисните ' Прозор ” да отворите траку за претрагу и унесете „ ЦМД ” унутар оквира за претрагу, из генерисаних резултата. Затим изаберите „ Командна линија ” апликацију и притисните „ Покрени као администратор ” дугме:

Избором опције, појавиће се нови прозор контролне линије, да бисте убили тренутно покренуте „ноде.јс“ услуге у позадини, извршите наредбу испод:

тасккилл / Ф / ИМ чвор. еке

Генерисани излаз показује да су услуге „ноде.јс“ прекинуте:

Коришћење ГУИ приступа

Да бисте убили покренуте ноде.јс услуге из система, отворите „ Таск Манагер ” притиском на „ Цтрл + Схифт + Есц ” тастери одмах. Након што отворите „Таск Манагер“, идите на „ Детаљи ”, изаберите „ ноде.еке ” сервис и притисните „ Заврши задатак ” дугме које се налази у доњем десном смеру, као што је приказано испод:

То је све у вези са решавањем „Грешка: слушајте ЕАДДРИНУСЕ: адреса која је већ у употреби“ у Ноде.јс.

Закључак

„Грешка: слушајте ЕАДДРИНУСЕ: адреса која је већ у употреби“ јавља се када више од једне услуге покушава да користи један порт у исто време. Да би то решио, корисник би требало да покуша да користи други број порта или да прекине услуге које су већ покренуте на наведеном броју порта користећи „ килл-порт ” модул. Ако грешка и даље није отклоњена, убијте све покренуте „ ноде.јс ” услуге из менаџера задатака и поново покрените апликацију. Овај водич је илустровао могућа решења за решавање проблема „Грешка: слушајте ЕАДДРИНУСЕ: адреса је већ у употреби“.