{"id":78969,"date":"2020-04-23T13:42:02","date_gmt":"2020-04-23T11:42:02","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vypusk-servernoj-javascript-platformy-node-js-14-0"},"modified":"2020-04-23T13:42:02","modified_gmt":"2020-04-23T11:42:02","slug":"vypusk-servernoj-javascript-platformy-node-js-14-0","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sl\/blog\/news\/vypusk-servernoj-javascript-platformy-node-js-14-0","title":{"rendered":"Izid stre\u017eni\u0161ke JavaScript platforme Node.js 14.0","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex><a rel=\"nofollow\" href=\"https:\/\/nodejs.org\/en\/blog\/release\/v14.0.0\/\">Odr\u017ean<\/a><\/noindex> izdanje <noindex><a rel=\"nofollow\" href=\"https:\/\/nodejs.org\">Node.js 14.0<\/a><\/noindex>, platforme za izvajanje omre\u017enih aplikacij v jeziku JavaScript. Node.js 14.0 spada med razli\u010dice z dolgo podporo, vendar bo ta status dodeljen \u0161ele oktobra, po stabilizaciji. Podpora za Node.js 14.0 bo <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/nodejs\/Release\">zagotovljena<\/a><\/noindex> do aprila 2023. Podpora prej\u0161nje LTS razli\u010dice Node.js 12.0 bo trajala do aprila 2022, prej\u0161nji LTS razli\u010dici 10.0 pa do aprila 2021. Podpora za prehodno razli\u010dico 13.x se bo kon\u010dala junija letos.<\/p>\n<p>Glavne <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/@nodejs\/node-js-version-14-available-now-8170d384567e\">izbolj\u0161ave<\/a><\/noindex>:<\/p>\n<ul>\n<li class=\"l\"> Stabilizirana je mo\u017enost sprotne generacije ali ob dolo\u010denih dogodkih <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/the-node-js-collection\/easily-identify-problems-in-node-js-applications-with-diagnostic-report-dc82370d8029\">diagnosti\u010dnih poro\u010dil<\/a><\/noindex>, ki prikazujejo dogodke, potrebne za diagnosticiranje te\u017eav, kot so zru\u0161itve, zmanj\u0161ana u\u010dinkovitost, uhajanje pomnilnika, velika obremenitev CPU, nenadne napake in podobno.\n<li class=\"l\"> Dodana je eksperimentalna podpora za API <noindex><a rel=\"nofollow\" href=\"https:\/\/nodejs.org\/api\/async_hooks.html#async_hooks_class_asynclocalstorage\">Async Local Storage<\/a><\/noindex> z implementacijo razreda AsyncLocalStorage, ki se lahko uporablja za ustvarjanje asinhronega stanja z obdelovalci na osnovi klicev callback in promise. AsyncLocalStorage omogo\u010da shranjevanje podatkov med obdelavo spletnih zahtev, kar spominja na lokalne za posamezne niti sklade (Thread-Local Storage) v drugih jezikh.\n<li class=\"l\"> Odtaknjeno je opozorilo o eksperimentalni funkcionalnosti pri nalaganju <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/nodejs\/node\/blob\/master\/doc\/api\/esm.md\">modulov<\/a><\/noindex>  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=42450\">ECMAScript 6<\/a><\/noindex> ki se povezujejo in izvozi s pomo\u010djo izrazov import in export. Sama implementacija modulov ESM pa ostaja eksperimentalna.\n<li class=\"l\"> Motor V8 je posodobljen na razli\u010dico <noindex><a rel=\"nofollow\" href=\"https:\/\/v8.dev\/\">8.1<\/a><\/noindex> (<noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52000\">1<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52565\">2<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52312\">3<\/a><\/noindex>), \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0432\u043d\u0435\u0441\u0435\u043d\u044b \u043d\u043e\u0432\u044b\u0435 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0438 \u0434\u043e\u0431\u0430\u0432\u043b\u0435\u043d\u044b \u0442\u0430\u043a\u0438\u0435 \u043d\u043e\u0432\u0448\u0435\u0441\u0442\u0432\u0430, \u043a\u0430\u043a \u043d\u043e\u0432\u044b\u0439 \u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f &#171;??&#187; (\u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043f\u0440\u0430\u0432\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u043d\u0434, \u0435\u0441\u043b\u0438 \u043b\u0435\u0432\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u043d\u0434 \u0438\u043c\u0435\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 NULL \u0438\u043b\u0438 undefined, \u0438 \u043d\u0430\u043e\u0431\u043e\u0440\u043e\u0442),  \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 &#171;?.&#187; \u0434\u043b\u044f \u0435\u0434\u0438\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0432\u0441\u0435\u0439 \u0446\u0435\u043f\u043e\u0447\u043a\u0438 \u0441\u0432\u043e\u0439\u0441\u0442\u0432 \u0438\u043b\u0438 \u0432\u044b\u0437\u043e\u0432\u043e\u0432 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 &#171;db?.user?.name?.length&#187; \u0431\u0435\u0437 \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u043e\u0432\u0435\u0440\u043e\u043a), \u043c\u0435\u0442\u043e\u0434 Intl.DisplayName \u0434\u043b\u044f \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u044f \u043b\u043e\u043a\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u0439 \u0438 \u0442.\u043f.\n<li class=\"l\"> \u041f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0430 \u0440\u0435\u0432\u0438\u0437\u0438\u044f API Streams, \u043d\u0430\u0446\u0435\u043b\u0435\u043d\u043d\u0430\u044f \u043d\u0430 \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u0435 \u0441\u043e\u0433\u043b\u0430\u0441\u043e\u0432\u0430\u043d\u043d\u043e\u0441\u0442\u0438 API-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u043e\u0432 Streams \u0438 \u0443\u0441\u0442\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u0438\u0439 \u0432 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0438 \u0431\u0430\u0437\u043e\u0432\u044b\u0445 \u0447\u0430\u0441\u0442\u0435\u0439 Node.js. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 http.OutgoingMessage \u043f\u0440\u0438\u0431\u043b\u0438\u0436\u0435\u043d\u043e \u043a stream.Writable, \u0430  net.Socket \u043a stream.Duplex. \u041e\u043f\u0446\u0438\u044f autoDestroy \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0432\u044b\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0432 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 &#171;true&#187;, \u043f\u043e\u0434\u0440\u0430\u0437\u0443\u043c\u0435\u0432\u0430\u044e\u0449\u0435\u0435 \u0432\u044b\u0437\u043e\u0432 &#171;_destroy&#187; \u043f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f.\n<li class=\"l\"> Dodana je eksperimentalna podpora za API <noindex><a rel=\"nofollow\" href=\"https:\/\/nodejs.org\/api\/wasi.html\">WASI<\/a><\/noindex> (<noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50406\">WebAssembly System Interface<\/a><\/noindex>), ki ponuja programske vmesnike za neposredno interakcijo z operacijskim sistemom (POSIX API za delo s datotekami, podjetji itd.).\n<li class=\"l\"> Pove\u010dane zahteve za <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/nodejs\/node\/blob\/v12.x\/BUILDING.md#platform-list\">minimalne razli\u010dice<\/a><\/noindex> kompajlerjev in platform: macOS 10.13 (High Sierra), GCC 6,  <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/nodejs\/node\/pull\/31954\">Windows novej\u0161e od 7\/2008R2<\/a><\/noindex>.\n<\/ul>\n<p>Spomnimo, da se lahko platforma Node.js uporablja tako za stre\u017eni\u0161ko podporo delovanju spletnih aplikacij, kot tudi za ustvarjanje obi\u010dajnih odjemalskih in stre\u017eni\u0161kih omre\u017enih programov. Za raz\u0161iritev funkcionalnosti aplikacij za Node.js je pripravljena obse\u017ena <noindex><a rel=\"nofollow\" href=\"https:\/\/www.npmjs.com\/\">katalog modulov<\/a><\/noindex>, v katerem lahko najdete Module z implementacijo stre\u017enikov in odjemalcev HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3, module za integracijo z razli\u010dnimi spletnimi okviri, obdelovalnike WebSocket in Ajax, povezovalnike do DBMS (MySQL, PostgreSQL, SQLite, MongoDB), predloge, CSS motorje, implementacije kripto algoritmov in sistemov avtorizacije (OAuth), XML-parsere.<\/p>\n<p> Za obdelavo velikega \u0161tevila vzporednih zahtev Node.js uporablja asimetri\u010den model izvajanja kode, ki temelji na obdelavi dogodkov v neblokirnem na\u010dinu in opredelitvi callback obdelovalnikov. Kot na\u010dini multiplexiranja povezav podpiramo metode, kot so epoll, kqueue, \/dev\/poll in select. Za multiplexiranje povezav se uporablja knji\u017enica <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/libuv\/libuv\">libuv<\/a><\/noindex>, ki je nadgradnja nad <noindex><a rel=\"nofollow\" href=\"http:\/\/software.schmorp.de\/pkg\/libev.html\">libev<\/a><\/noindex> v sistemih Unix in nad IOCP v sistemih Windows. Za ustvarjanje nabora niti (thread pool) se uporablja knji\u017enica <noindex><a rel=\"nofollow\" href=\"http:\/\/software.schmorp.de\/pkg\/libeio.html\">libeio<\/a><\/noindex>, za izvajanje DNS-poizvedb v neblokirnem na\u010dinu pa je integriran <noindex><a rel=\"nofollow\" href=\"http:\/\/c-ares.haxx.se\/\">c-ares<\/a><\/noindex>. Vse sistemske klice, ki povzro\u010dajo blokado, izvajamo znotraj nabora niti in nato, kot tudi obdelovalniki signalov, po\u0161ljejo rezultate svojega dela nazaj preko neimenovane cevi (pipe). Izvajanje JavaScript kode se zagotavlja skozi vklju\u010ditev motorja <noindex><a rel=\"nofollow\" href=\"http:\/\/code.google.com\/p\/v8\/\">V8<\/a><\/noindex> (dodatno Microsoft razvija razli\u010dico Node.js z motorjem Chakra-Core).  <\/p>\n<p>Essencialno je Node.js podoben okvirjem <noindex><a rel=\"nofollow\" href=\"http:\/\/search.cpan.org\/dist\/AnyEvent\/\">Perl AnyEvent<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/eventmachine\/eventmachine\">Ruby Event Machine<\/a><\/noindex>, <noindex><a rel=\"nofollow\" href=\"http:\/\/twistedmatrix.com\/\">Python Twisted<\/a><\/noindex> in <noindex><a rel=\"nofollow\" href=\"http:\/\/wiki.tcl.tk\/1527\">implementaciji<\/a><\/noindex> Dogodili su se u Tcl-u, ali je petlja za obradu doga\u0111aja (event loop) u Node.js skrivena od programera i podse\u0107a na obradu doga\u0111aja u web-aplikaciji koja se izvr\u0161ava u pretra\u017eiva\u010du. Kada pi\u0161ete aplikacije za node.js, potrebno je uzeti u obzir specifi\u010dnosti programiranja zasnovanog na doga\u0111ajima, na primer, umesto da izvr\u0161avate \"var result = db.query(\"select..\");\" \u010dekaju\u0107i da se izvr\u0161i, u Node.js se koristi princip asinhronog izvr\u0161avanja, tj. kod se transformi\u0161e u \"db.query(\"select..\", function (result) {obrada rezultata});\", pri \u010demu kontrola odmah prelazi na naredni kod, a rezultat upita \u0107e se obraditi kad podaci stignu. <\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Izvor: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52786\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 Node.js 14.0, \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 JavaScript. Node.js 14.0 \u043e\u0442\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u043a \u0432\u0435\u0442\u043a\u0430\u043c \u0441 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u0441\u0440\u043e\u043a\u043e\u043c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438, \u043d\u043e \u0434\u0430\u043d\u043d\u044b\u0439 \u0441\u0442\u0430\u0442\u0443\u0441 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u043e\u043a\u0442\u044f\u0431\u0440\u0435, \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0441\u0442\u0430\u0431\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u0438. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 Node.js 14.0 \u0431\u0443\u0434\u0435\u0442 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u0434\u043e \u0430\u043f\u0440\u0435\u043b\u044f 2023 \u0433\u043e\u0434\u0430. \u0421\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0448\u043b\u043e\u0439 LTS-\u0432\u0435\u0442\u043a\u0438 Node.js 12.0 \u043f\u0440\u043e\u0434\u043b\u0438\u0442\u0441\u044f \u0434\u043e \u0430\u043f\u0440\u0435\u043b\u044f 2022 \u0433\u043e\u0434\u0430, \u0430 \u043f\u043e\u0437\u0430\u043f\u0440\u043e\u0448\u043b\u043e\u0439 LTS-\u0432\u0435\u0442\u043a\u0438 10.0 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-78969","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.4 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 Node.js 14.0, \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sl\/blog\/news\/vypusk-servernoj-javascript-platformy-node-js-14-0\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sl_SI\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0439 JavaScript-\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Node.js 14.0 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 Node.js 14.0, \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sl\/blog\/news\/vypusk-servernoj-javascript-platformy-node-js-14-0\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-04-23T11:42:02+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-04-23T11:42:02+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Izdaja stre\u017eni\u0161ke JavaScript platforme Node.js 14.0 | ProHoster","description":"Iz\u0161el je Node.js 14.0, platforma za izvajanje.","canonical_url":"https:\/\/prohoster.info\/sl\/blog\/news\/vypusk-servernoj-javascript-platformy-node-js-14-0","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sl_SI","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0439 JavaScript-\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Node.js 14.0 | ProHoster","og:description":"\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 Node.js 14.0, \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f.","og:url":"https:\/\/prohoster.info\/sl\/blog\/news\/vypusk-servernoj-javascript-platformy-node-js-14-0","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-04-23T11:42:02+00:00","article:modified_time":"2020-04-23T11:42:02+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"78969","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 16:47:25","updated":"2022-10-01 20:48:10","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/78969","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/comments?post=78969"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/78969\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/media?parent=78969"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/categories?post=78969"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/tags?post=78969"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}