{"id":33901,"date":"2019-10-31T21:55:19","date_gmt":"2019-10-31T18:55:19","guid":{"rendered":"https:\/\/prohoster.info\/blog\/cloudflare-mozilla-i-facebook-razvivayut-binaryast-dlya-uskoreniya-zagruzki-javascript\/"},"modified":"2019-10-31T21:55:19","modified_gmt":"2019-10-31T18:55:19","slug":"cloudflare-mozilla-i-facebook-razvivayut-binaryast-dlya-uskoreniya-zagruzki-javascript","status":"publish","type":"post","link":"https:\/\/prohoster.info\/lv\/blog\/news\/cloudflare-mozilla-i-facebook-razvivayut-binaryast-dlya-uskoreniya-zagruzki-javascript","title":{"rendered":"Cloudflare, Mozilla un Facebook att\u012bsta BinaryAST, lai pa\u0101trin\u0101tu JavaScript iel\u0101di","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>In\u017einieri no Cloudflare, Mozilla, Facebook un Bloomberg <noindex><a rel=\"nofollow\" href=\"https:\/\/blog.cloudflare.com\/binary-ast\/\">ir ieteiku\u0161i<\/a><\/noindex> jauns form\u0101ts <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/tc39\/proposal-binary-ast\">BinaryAST<\/a><\/noindex>  lai pa\u0101trin\u0101tu JavaScript koda pieg\u0101di un apstr\u0101di, atverot vietnes p\u0101rl\u016bkprogramm\u0101. BinaryAST p\u0101rvieto sintakses anal\u012bzes f\u0101zi uz serveri un pieg\u0101d\u0101 jau izveidotu abstrakto sintakses koku (<noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%90%D0%B1%D1%81%D1%82%D1%80%D0%B0%D0%BA%D1%82%D0%BD%D0%BE%D0%B5_%D1%81%D0%B8%D0%BD%D1%82%D0%B0%D0%BA%D1%81%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%BE%D0%B5_%D0%B4%D0%B5%D1%80%D0%B5%D0%B2%D0%BE\">AST<\/a><\/noindex>). Sa\u0146emot BinaryAST, p\u0101rl\u016bkprogramma var tie\u0161i p\u0101riet uz kompil\u0101cijas posmu, apejot JavaScript avota koda pars\u0113\u0161anu. <\/p>\n<p>Test\u0113\u0161anai <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/binast\/binjs-ref\">sagatavota<\/a><\/noindex> atsauces \u012bstenojums, kas tiek pieg\u0101d\u0101ts ar MIT licenci. Pars\u0113\u0161anai tiek izmantoti Node.js komponenti, savuk\u0101rt kods AST optimiz\u0113\u0161anai un veido\u0161anai ir rakst\u012bts valod\u0101 Rust. P\u0101rl\u016bkprogrammu pus\u0113 atbalsts<br \/>\nBinaryAST jau ir pieejams <noindex><a rel=\"nofollow\" href=\"https:\/\/www.mozilla.org\/en-US\/firefox\/channel\/desktop\/#nightly\">nakts b\u016bv\u0113s<\/a><\/noindex> Firefox. BinaryAST kod\u0113t\u0101js var tikt izmantots gan beigu vietnes r\u012bkjosl\u0101, gan \u0101r\u0113jo viet\u0146u skriptu iepako\u0161anai, izmantojot starpserveri vai satura pieg\u0101des t\u012bklu. Pa\u0161laik BinaryAST standartiz\u0101cija jau ir s\u0101ku\u0161\u0101s darba grup\u0101 <noindex><a rel=\"nofollow\" href=\"https:\/\/tc39.github.io\/\">ECMA TC39<\/a><\/noindex>, p\u0113c kuras pabeig\u0161anas form\u0101ts var\u0113s l\u012bdz\u0101lt dz\u012bvot ar past\u0101vo\u0161aj\u0101m satura saspie\u0161anas metod\u0113m, piem\u0113ram, gzip un brotli. <\/p>\n<p><center><noindex><a rel=\"nofollow\" href=\"https:\/\/blog.cloudflare.com\/content\/images\/2019\/05\/without-binAST.png\"><img decoding=\"async\" alt=\"Cloudflare, Mozilla un Facebook att\u012bsta BinaryAST, lai pa\u0101trin\u0101tu JavaScript iel\u0101di\" src=\"\/wp-content\/uploads\/2019\/05\/fdb78c6b073295f42c6ed83e0ba73dd1.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/center><br \/>\n<center><noindex><a rel=\"nofollow\" href=\"https:\/\/blog.cloudflare.com\/content\/images\/2019\/05\/With-BinAST.png\"><img decoding=\"async\" alt=\"Cloudflare, Mozilla un Facebook att\u012bsta BinaryAST, lai pa\u0101trin\u0101tu JavaScript iel\u0101di\" src=\"\/wp-content\/uploads\/2019\/05\/457e5f127c81b8708cdc04ba0176a636.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/center><\/p>\n<p>Significantly, the process of handling JavaScript takes a considerable amount of time during the loading and parsing phase of the code. Given that the volume of JavaScript loaded on many popular sites is approaching 10 MB (for example, LinkedIn \u2014 7.2 MB, Facebook \u2014 7.1 MB, Gmail \u2014 3.9 MB), the initial processing of JavaScript introduces substantial delays. The parsing stage on the browser side is also slowed down due to the inability to fully build the AST on the fly, as code is loaded (the browser has to wait for the completion of code block loading, such as the end of functions, to obtain the missing information needed for parsing the current elements).<\/p>\n<p>Da\u013c\u0113ji probl\u0113mu cen\u0161as atrisin\u0101t, izplatot kodu minimiz\u0113t\u0101 un saspiest\u0101 veid\u0101, k\u0101 ar\u012b izmantojot p\u0101rl\u016bkprogrammas \u0123ener\u0113t\u0101 bajtkoda ke\u0161atmi\u0146u. M\u016bsdienu vietn\u0113s kods tiek regul\u0101ri atjaunin\u0101ts, t\u0101p\u0113c ke\u0161atmi\u0146a da\u013c\u0113ji atrisina probl\u0113mu. Izeja var\u0113tu b\u016bt WebAssembly, bet tam ir nepiecie\u0161ama skaidra tipu izmanto\u0161ana kod\u0101 un tas nav labs risin\u0101jums, lai pa\u0101trin\u0101tu jau eso\u0161\u0101 JavaScript koda apstr\u0101di. <\/p>\n<p>Cits variants ir pieg\u0101d\u0101t gatavu kompil\u0113tu bajtkodu t\u0101 viet\u0101, lai izmantotu JavaScript skriptus, ta\u010du p\u0101rl\u016bkprogrammu dzin\u0113ju izstr\u0101d\u0101t\u0101ji iebilst, jo tre\u0161\u0101s puses bajtkodu ir gr\u016bti verific\u0113t, un t\u0101 tie\u0161a apstr\u0101de var novest pie Web sl\u0101\u0146o\u0161an\u0101s, rodas papildu dro\u0161\u012bbas draudi un ir nepiecie\u0161ams izstr\u0101d\u0101t univers\u0101la bajtkoda form\u0101tu.<\/p>\n<p>BinaryAST \u013cauj iek\u013cauties eso\u0161aj\u0101 koda izstr\u0101des un pieg\u0101des model\u012b bez jauna bajtkoda rad\u012b\u0161anas un bez JavaScript valodas mai\u0146as. Datu apjoms BinaryAST form\u0101t\u0101 ir sal\u012bdzin\u0101ms ar saspiestu minific\u0113tu JavaScript kodu, un apstr\u0101des \u0101trums palielin\u0101s, izsl\u0113dzot avota tekstu pars\u0113\u0161anas f\u0101zi. Turkl\u0101t form\u0101ts \u013cauj veikt kompil\u0101ciju bajtkod\u0101, kad BinaryAST tiek iel\u0101d\u0113ts, negaidot visu datu sa\u0146em\u0161anu. Turkl\u0101t servera pus\u0113 notieko\u0161\u0101 pars\u0113\u0161ana \u013cauj izsl\u0113gt no nodot\u0101 BinaryAST att\u0113la netiek izmantotas funkcijas un lieko kodu, kas, pars\u0113jot p\u0101rl\u016bkprogramm\u0101, pat\u0113r\u0113 laiku gan anal\u012bzei, gan liek\u0101 trafika p\u0101rs\u016bt\u012b\u0161anai.<\/p>\n<p>BinaryAST rakstur\u012bg\u0101 iez\u012bme ir ar\u012b iesp\u0113ja atjaunot las\u0101mu JavaScript, kas prec\u012bzi nesakr\u012bt ar s\u0101kotn\u0113jo variantu, bet ir semantiski ekvivalents un ietver tos pa\u0161us main\u012bgo un funkciju nosaukumus (BinaryAST saglab\u0101 nosaukumus, bet nesaglab\u0101 inform\u0101ciju par koda poz\u012bcij\u0101m, format\u0113jumu un koment\u0101riem). Mon\u0113tas otra puse ir jaunu uzbrukumu vektoru par\u0101d\u012b\u0161an\u0101s, bet, k\u0101 uzskata izstr\u0101d\u0101t\u0101ji, tie ir iev\u0113rojami maz\u0101ki un v\u0113l kontrol\u0113jami nek\u0101 alternat\u012bvu lieto\u0161anas gad\u012bjum\u0101, piem\u0113ram, bajtkoda izplat\u012b\u0161anas gad\u012bjum\u0101.<\/p>\n<p>Testi kodam facebook.com par\u0101d\u012bja, ka JavaScript pars\u0113\u0161anai tiek pat\u0113r\u0113ti 10-15% CPU resursu un pars\u0113\u0161anai nepiecie\u0161ams vair\u0101k laika nek\u0101 bajtkoda \u0123ener\u0113\u0161anai un s\u0101kotn\u0113j\u0101 koda izveidei JIT. SpiderMonkey motor\u0101 piln\u012bgas AST izveides laiks ir 500-800 ms, un BinaryAST izmanto\u0161ana \u013c\u0101va samazin\u0101t \u0161o r\u0101d\u012bt\u0101ju par 70-90%.<br \/>\nKopum\u0101 liel\u0101kajai da\u013cai web ietvaru, izmantojot BinaryAST, JavaScript pars\u0113\u0161anas laiks tiek samazin\u0101ts par 3-10% bez optimiz\u0101cijas re\u017e\u012bm\u0101 un par 90-97%, aktiviz\u0113jot neizmantoto funkciju ignor\u0113\u0161anas re\u017e\u012bmu.<br \/>\nIzpildot test\u0113\u0161anas JavaScript komplektu, kura lielums ir 1.2 MB, BinaryAST izmanto\u0161ana \u013c\u0101va samazin\u0101t palai\u0161anas laiku no 338 l\u012bdz 314 ms uz galddatoru (Intel i7) un no 2019 l\u012bdz 1455 ms uz mobilaj\u0101m ier\u012bc\u0113m (HTC One M8).<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Avots: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50701\">opennet.lv<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0418\u043d\u0436\u0435\u043d\u0435\u0440\u044b \u0438\u0437 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439 Cloudflare, Mozilla, Facebook \u0438 Bloomberg \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b\u0438 \u043d\u043e\u0432\u044b\u0439 \u0444\u043e\u0440\u043c\u0430\u0442 BinaryAST \u0434\u043b\u044f \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u044f \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u0438 \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0438 JavaScript \u043a\u043e\u0434\u0430 \u043f\u0440\u0438 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u0438 \u0441\u0430\u0439\u0442\u043e\u0432 \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435. BinaryAST \u0432\u044b\u043d\u043e\u0441\u0438\u0442 \u0444\u0430\u0437\u0443 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0440\u0430\u0437\u0431\u043e\u0440\u0430 \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0443 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0438 \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0443\u0436\u0435 \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0435 \u0430\u0431\u0441\u0442\u0440\u0430\u043a\u0442\u043d\u043e\u0435 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u0434\u0435\u0440\u0435\u0432\u043e (AST). \u041f\u0440\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0438 BinaryAST \u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u0441\u0440\u0430\u0437\u0443 \u043c\u043e\u0436\u0435\u0442 \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u043d\u0430 \u0441\u0442\u0430\u0434\u0438\u044e \u043a\u043e\u043c\u043f\u0438\u043b\u044f\u0446\u0438\u0438, \u043c\u0438\u043d\u0443\u044f \u043f\u0430\u0440\u0441\u0438\u043d\u0433 \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0433\u043e \u043a\u043e\u0434\u0430 JavaScript. [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":25564,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-33901","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.5 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0418\u043d\u0436\u0435\u043d\u0435\u0440\u044b \u0438\u0437 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439 Cloudflare, Mozilla, Facebook \u0438 Bloomberg \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b\u0438 \u043d\u043e\u0432\u044b\u0439 \u0444\u043e\u0440\u043c\u0430\u0442\" \/>\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\/lv\/blog\/news\/cloudflare-mozilla-i-facebook-razvivayut-binaryast-dlya-uskoreniya-zagruzki-javascript\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.5\" \/>\n\t\t<meta property=\"og:locale\" content=\"lv_LV\" \/>\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\udd47Cloudflare, Mozilla \u0438 Facebook \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0442 BinaryAST \u0434\u043b\u044f \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 JavaScript | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0418\u043d\u0436\u0435\u043d\u0435\u0440\u044b \u0438\u0437 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439 Cloudflare, Mozilla, Facebook \u0438 Bloomberg \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b\u0438 \u043d\u043e\u0432\u044b\u0439 \u0444\u043e\u0440\u043c\u0430\u0442\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/lv\/blog\/news\/cloudflare-mozilla-i-facebook-razvivayut-binaryast-dlya-uskoreniya-zagruzki-javascript\" \/>\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=\"2019-10-31T18:55:19+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:55:19+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\udd47Cloudflare, Mozilla un Facebook att\u012bsta BinaryAST, lai pa\u0101trin\u0101tu JavaScript iel\u0101di | ProHoster","description":"In\u017eenieri no uz\u0146\u0113mumiem Cloudflare, Mozilla, Facebook un Bloomberg pied\u0101v\u0101ja jaunu form\u0101tu","canonical_url":"https:\/\/prohoster.info\/lv\/blog\/news\/cloudflare-mozilla-i-facebook-razvivayut-binaryast-dlya-uskoreniya-zagruzki-javascript","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"lv_LV","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\udd47Cloudflare, Mozilla \u0438 Facebook \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0442 BinaryAST \u0434\u043b\u044f \u0443\u0441\u043a\u043e\u0440\u0435\u043d\u0438\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 JavaScript | ProHoster","og:description":"\u0418\u043d\u0436\u0435\u043d\u0435\u0440\u044b \u0438\u0437 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439 Cloudflare, Mozilla, Facebook \u0438 Bloomberg \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0438\u043b\u0438 \u043d\u043e\u0432\u044b\u0439 \u0444\u043e\u0440\u043c\u0430\u0442","og:url":"https:\/\/prohoster.info\/lv\/blog\/news\/cloudflare-mozilla-i-facebook-razvivayut-binaryast-dlya-uskoreniya-zagruzki-javascript","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":"2019-10-31T18:55:19+00:00","article:modified_time":"2019-10-31T18:55:19+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"33901","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":"2026-01-21 17:09:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:31:22","updated":"2026-01-21 17:09:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts\/33901","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/comments?post=33901"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/posts\/33901\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/media\/25564"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/media?parent=33901"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/categories?post=33901"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/lv\/wp-json\/wp\/v2\/tags?post=33901"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}