{"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\/ro\/blog\/news\/vypusk-servernoj-javascript-platformy-node-js-14-0","title":{"rendered":"Lansarea platformei server JavaScript 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\/\">A avut loc<\/a><\/noindex> lansare <noindex><a rel=\"nofollow\" href=\"https:\/\/nodejs.org\">Node.js 14.0<\/a><\/noindex>, platforme pentru executarea aplicatiilor de re\u021bea \u00een limbajul JavaScript. Node.js 14.0 face parte din ramurile cu suport pe termen lung, dar acest statut va fi acordat abia \u00een octombrie, dup\u0103 stabilizare. Suportul pentru Node.js 14.0 va <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/nodejs\/Release\">fi<\/a><\/noindex> asigurat p\u00e2n\u0103 \u00een aprilie 2023. Suportul pentru fosta ramur\u0103 LTS Node.js 12.0 va continua p\u00e2n\u0103 \u00een aprilie 2022, iar pentru ramura LTS anterioar\u0103 10.0 p\u00e2n\u0103 \u00een aprilie 2021. Suportul pentru ramura intermediar\u0103 13.x se va \u00eencheia \u00een iunie acestui an.<\/p>\n<p>Principalele <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/@nodejs\/node-js-version-14-available-now-8170d384567e\">\u00eembun\u0103t\u0103\u021biri<\/a><\/noindex>:<\/p>\n<ul>\n<li class=\"l\"> A fost stabilizat\u0103 capacitatea de generare \u00een timp real sau la apari\u021bia anumitor evenimente <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/the-node-js-collection\/easily-identify-problems-in-node-js-applications-with-diagnostic-report-dc82370d8029\">a rapoartelor de diagnostic<\/a><\/noindex>, care reflect\u0103 evenimentele ce ajut\u0103 la diagnosticarea unor probleme precum blocajele, sc\u0103derea performan\u021bei, scurgerile de memorie, o \u00eenc\u0103rcare mare a CPU-ului, erorile nea\u0219teptate etc.\n<li class=\"l\"> A fost ad\u0103ugat\u0103 suport experimental pentru API-ul <noindex><a rel=\"nofollow\" href=\"https:\/\/nodejs.org\/api\/async_hooks.html#async_hooks_class_asynclocalstorage\">Async Local Storage<\/a><\/noindex> cu implementarea clasei AsyncLocalStorage, care poate fi utilizat\u0103 pentru a crea un context asincron cu gestionatori bazati pe apeluri callback \u0219i promisiuni. AsyncLocalStorage permite stocarea datelor pe parcursul proces\u0103rii cererii web, amintind de depozitele locale pentru firele individuale (Thread-Local Storage) din alte limbaje.\n<li class=\"l\"> A fost eliminat mesajul de avertizare legat de capacit\u0103\u021bile experimentale la \u00eenc\u0103rcarea <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/nodejs\/node\/blob\/master\/doc\/api\/esm.md\">modules<\/a><\/noindex>  <noindex><a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=42450\">ECMAScript 6<\/a><\/noindex> modulelor importate \u0219i exportate prin expresiile import \u0219i export. \u00centre timp, implementarea modulelor ESM r\u0103m\u00e2ne \u00eenc\u0103 experimental\u0103.\n<li class=\"l\"> Motorul V8 a fost actualizat la versiunea <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>), \u00een care au fost aduse noi optimiz\u0103ri de performan\u021b\u0103 \u0219i au fost ad\u0103ugate inova\u021bii precum noul operator logic de unificare &#171;??&#187; (care returneaz\u0103 operandul din dreapta, dac\u0103 operandul din st\u00e2nga este NULL sau undefined, \u0219i invers), operatorul &#171;?.&#187; pentru verificarea simultan\u0103 a \u00eentregii lan\u021buri de propriet\u0103\u021bi sau apeluri (de exemplu &#171;db?.user?.name?.length&#187; f\u0103r\u0103 verific\u0103ri prealabile), metoda Intl.DisplayName pentru ob\u021binerea denumirilor localizate etc.\n<li class=\"l\"> A fost efectuat\u0103 o revizuire a API-ului Streams, viz\u00e2nd \u00eembun\u0103t\u0103\u021birea coeren\u021bei interfe\u021belor API Streams \u0219i eliminarea diferen\u021belor \u00een comportamentul p\u0103r\u021bilor de baz\u0103 Node.js. De exemplu, comportamentul http.OutgoingMessage este aprovizionat mai aproape de stream.Writable, iar net.Socket de stream.Duplex. Op\u021biunea autoDestroy este setat\u0103 implicit la &#171;true&#187;, ceea ce presupune apelarea &#171;_destroy&#187; dup\u0103 finalizare.\n<li class=\"l\"> A fost ad\u0103ugat\u0103 suport experimental pentru API-ul <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>), oferind interfe\u021be programatice pentru interac\u021biunea direct\u0103 cu sistemul de operare (API POSIX pentru lucrul cu fi\u0219iere, socket-uri etc.).\n<li class=\"l\"> Cerin\u021bele pentru <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/nodejs\/node\/blob\/v12.x\/BUILDING.md#platform-list\">versiunile minime<\/a><\/noindex> compilatoare \u0219i platforme: macOS 10.13 (High Sierra), GCC 6,  <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/nodejs\/node\/pull\/31954\">Windows 7\/2008R2 sau mai recent<\/a><\/noindex>.\n<\/ul>\n<p>actualizare 13.0.1, \u00een care au fost corectate c\u00e2teva erori. Printre acestea, a fost rezolvat\u0103 problema cu avertismentul privind utilizarea unei versiuni nesuportate \u00een npm 6.12.0. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.npmjs.com\/\">Reamintim c\u0103 platforma Node.js poate fi utilizat\u0103 at\u00e2t pentru \u00eentre\u021binerea serverului aplica\u021biilor web, c\u00e2t \u0219i pentru crearea de programe de re\u021bea client-server obi\u0219nuite. Pentru a extinde func\u021bionalit\u0103\u021bile aplica\u021biilor Node.js, a fost preg\u0103tit\u0103 o mare<\/a><\/noindex>, care poate g\u0103si module pentru implementarea serverelor \u0219i clien\u021bilor HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3, module pentru integrarea cu diferite framework-uri web, gestionari WebSocket \u0219i Ajax, conectori pentru SGBD-uri (MySQL, PostgreSQL, SQLite, MongoDB), motoruri de template-uri, CSS, implement\u0103ri de algoritmi criptografici \u0219i sisteme de autorizare (OAuth), parsere XML.<\/p>\n<p> Pentru a asigura procesarea unui num\u0103r mare de cereri paralele, Node.js folose\u0219te un model de execu\u021bie a codului asincron, bazat pe gestionarea evenimentelor \u00eentr-un mod non-blocant \u0219i definirea gestionatorilor de callback. Ca metode de multiplexare a conexiunilor, sunt sus\u021binute metode precum epoll, kqueue, \/dev\/poll \u0219i select. Pentru multiplexarea conexiunilor se folose\u0219te biblioteca <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/libuv\/libuv\">libuv<\/a><\/noindex>, care este un strat deasupra <noindex><a rel=\"nofollow\" href=\"http:\/\/software.schmorp.de\/pkg\/libev.html\">libev<\/a><\/noindex> \u00een sistemele Unix \u0219i deasupra IOCP \u00een Windows. Pentru a crea un pool de fire de execu\u021bie (thread pool), se folose\u0219te biblioteca <noindex><a rel=\"nofollow\" href=\"http:\/\/software.schmorp.de\/pkg\/libeio.html\">libeio<\/a><\/noindex>, pentru a efectua cereri DNS \u00eentr-un mod non-blocant este integrat <noindex><a rel=\"nofollow\" href=\"http:\/\/c-ares.haxx.se\/\">c-ares<\/a><\/noindex>. Toate apelurile de sistem care genereaz\u0103 blocare sunt efectuate \u00een interiorul pool-ului de fire \u0219i apoi, la fel ca gestionarii de semnale, transmit rezultatul muncii lor \u00eenapoi printr-un canal anonimizat (pipe). Executarea codului JavaScript este asigurat\u0103 prin utilizarea motorului dezvoltat de Google <noindex><a rel=\"nofollow\" href=\"http:\/\/code.google.com\/p\/v8\/\">V8<\/a><\/noindex> (\u00een plus, Microsoft dezvolt\u0103 o variant\u0103 Node.js cu motorul Chakra-Core).  <\/p>\n<p>\u00cen esen\u021b\u0103, Node.js este similar cu framework-urile <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> \u0219i <noindex><a rel=\"nofollow\" href=\"http:\/\/wiki.tcl.tk\/1527\">implementarea<\/a><\/noindex> evenimentelor \u00een Tcl, dar ciclul de procesare a evenimentelor (event loop) \u00een Node.js este ascuns de dezvoltator \u0219i seam\u0103n\u0103 cu procesarea evenimentelor dintr-o aplica\u021bie web care ruleaz\u0103 \u00een browser. Atunci c\u00e2nd scrie\u021bi aplica\u021bii pentru Node.js, trebuie s\u0103 \u021bine\u021bi cont de specificul program\u0103rii orientate pe evenimente, de exemplu, \u00een loc de a executa &#171;var result = db.query(&#171;select..&#187;);&#187; a\u0219tept\u00e2nd finalizarea lucr\u0103rii \u0219i procesarea ulterioar\u0103 a rezultatelor, \u00een Node.js se folose\u0219te principiul execu\u021biei asincrone, adic\u0103 codul este transformat \u00een &#171;db.query(&#171;select..&#187;, function (result) {procesarea rezultatului});&#187;, moment \u00een care controlul se va transfera imediat la codul ulterior, iar rezultatul interog\u0103rii va fi procesat pe m\u0103sur\u0103 ce datele devin disponibile. <\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Sursa: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=52786\">opennet.ro<\/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.2.1 - 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\/ro\/blog\/news\/vypusk-servernoj-javascript-platformy-node-js-14-0\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\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\/ro\/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\udd47Lansarea platformei server-side JavaScript Node.js 14.0 | ProHoster","description":"A avut loc lansarea Node.js 14.0, platforma de execu\u021bie.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/news\/vypusk-servernoj-javascript-platformy-node-js-14-0","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","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\/ro\/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\/ro\/wp-json\/wp\/v2\/posts\/78969","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=78969"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/78969\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=78969"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=78969"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=78969"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}