{"id":113913,"date":"2024-02-27T22:03:07","date_gmt":"2024-02-27T20:03:07","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/prekrashhenie-sushhestvovaniya-nitter-svobodnogo-alternativnogo-frontenda-k-twitter"},"modified":"2024-02-27T22:03:07","modified_gmt":"2024-02-27T20:03:07","slug":"prekrashhenie-sushhestvovaniya-nitter-svobodnogo-alternativnogo-frontenda-k-twitter","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pt\/blog\/news\/prekrashhenie-sushhestvovaniya-nitter-svobodnogo-alternativnogo-frontenda-k-twitter","title":{"rendered":"O fim da exist\u00eancia do Nitter, uma alternativa livre frontend para o Twitter","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>A \u00faltima inst\u00e2ncia p\u00fablica do Nitter tornou-se obsoleta. O projeto Nitter desenvolveu um frontend livre para acessar o X.com\/Twitter sem a imposi\u00e7\u00e3o de JavaScript, an\u00e1lises, rastreadores e servi\u00e7os de terceiros. Em 31 de janeiro, foi interrompida a emiss\u00e3o de tokens usados no Nitter para facilitar o acesso ao conte\u00fado no X.com. Em 26 de fevereiro, expirou o tempo de vida dos \u00faltimos tokens emitidos, resultando na paralisa\u00e7\u00e3o total do Nitter.        <\/p>\n<p>Ap\u00f3s a compra por Elon Musk, o Twitter (agora renomeado para X) come\u00e7ou a implementar um conjunto de medidas t\u00e9cnicas e organizacionais voltadas para a monetiza\u00e7\u00e3o agressiva da plataforma, anteriormente considerada deficit\u00e1ria. Entre as mudan\u00e7as, foi implementada a tarifa\u00e7\u00e3o das informa\u00e7\u00f5es obtidas por cada conta (foram estabelecidos limites para diferentes tipos de contas \u2013 10.000 para detentores do \u2018selo azul\u2019 pago, 1.000 para usu\u00e1rios normais, 500 para novos usu\u00e1rios comuns); contas de \u2018desenvolvedores\u2019 foram categorizadas como pagas, com limites adequados para extra\u00e7\u00e3o massiva de dados (scraping); e a entrega de informa\u00e7\u00f5es aos usu\u00e1rios sem contas foi interrompida.     <\/p>\n<p>Como justificativa, foi afirmado publicamente (2023-07-01) que isso eram \u2018medidas emergenciais tempor\u00e1rias\u2019, devido ao fato de que o download automatizado de dados por bots leva \u00e0 degrada\u00e7\u00e3o do servi\u00e7o para usu\u00e1rios comuns. Antes disso (2023-04-19), houve insinua\u00e7\u00f5es contra a Microsoft, alegando que a empresa usava ilegalmente dados do Twitter para treinar IA. Posteriormente (2023-11-17), a introdu\u00e7\u00e3o de limites foi justificada pela promessa de Musk de combater bots.    <\/p>\n<p>O Nitter era um projeto de desenvolvimento de software voltado para proteger os usu\u00e1rios do Twitter da vigil\u00e2ncia, permitindo que aqueles que apenas leem o conte\u00fado, mas n\u00e3o enviam mensagens, tenham um site alternativo para visualizar o Twitter, sem a necessidade de conta ou JavaScript ativado. Esse software funciona na verdade como um scraper e intermedi\u00e1rio, que, em vez de armazenar dados em um banco de dados, os envia diretamente ao usu\u00e1rio final (embora alguns dados operacionais sejam armazenados em cache no Redis).     <\/p>\n<p>Assim, o software Nitter:    <\/p>\n<li class=\"l\"> era tecnicamente exatamente o tipo de software contra o qual a dire\u00e7\u00e3o do Twitter declarou estar lutando ativamente;\n<li class=\"l\"> era um dos poucos softwares ativamente desenvolvidos para acessar dados hospedados no Twitter, o que tornava sua utiliza\u00e7\u00e3o como um m\u00f3dulo de scraping em um sentido mais restrito da palavra \u2013 coleta de dados contornando as interfaces oficiais para isso;\n<li class=\"l\"> inst\u00e2ncias p\u00fablicas do Nitter tornaram-se tamb\u00e9m alvos de scraping, levando algumas delas a implementar sua pr\u00f3pria vers\u00e3o de captcha (1 requisi\u00e7\u00e3o POST adicional, espec\u00edfica para cada inst\u00e2ncia).\n<p>Como resultado da an\u00e1lise de meios alternativos para continuar operando nas novas condi\u00e7\u00f5es, foram descobertos RSS e alguns pontos de entrada em syndication.twitter.com, que forneciam informa\u00e7\u00f5es para usu\u00e1rios n\u00e3o registrados no formato JSON e eram usados para integra\u00e7\u00e3o com outras redes sociais. Por um tempo, o Nitter obteve informa\u00e7\u00f5es atrav\u00e9s dessas interfaces, mas depois elas tamb\u00e9m foram fechadas. Ap\u00f3s isso, foi encontrado um m\u00e9todo para usar \u2018contas de convidados\u2019, que tinham privil\u00e9gios de leitura. Um dos tipos de \u2018contas de convidados\u2019 foi projetado para uso em dispositivos de Internet das Coisas com navegadores limitados.     <\/p>\n<p>Mas o Nitter utilizou outro tipo de \"contas tempor\u00e1rias\", que aplicavam OAuth em vez de Cookies, eram registradas atrav\u00e9s da API e aparentemente eram utilizadas por um aplicativo para Android. Esse tipo de conta tem limites de 500 solicita\u00e7\u00f5es \u00e0 API a cada 15 minutos, e seu \"registro\" est\u00e1 vinculado a <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/pt\/lir\/ipv4\/\"   title=\"endere\u00e7o IP\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"600\">endere\u00e7o IP<\/a> (de um \u00fanico IP pode-se registrar uma \"conta tempor\u00e1ria\" por dia, mas uma \"conta\" j\u00e1 registrada pode ser utilizada de outros endere\u00e7os IP).    <\/p>\n<p>Essas \"contas\" (tokens de acesso) funcionaram por 30 dias. Naquele momento, uma solu\u00e7\u00e3o adequada para o problema da cria\u00e7\u00e3o em massa de contas tempor\u00e1rias poderia ser o crowdsourcing para seu registro por usu\u00e1rios, usando algo semelhante ao Bibliogram (um userscript que pega o token tempor\u00e1rio de um usu\u00e1rio e o transmite para uma inst\u00e2ncia p\u00fablica).    <\/p>\n<p>No final de janeiro, o X cessou a emiss\u00e3o desses tokens. A elimina\u00e7\u00e3o do \u00faltimo m\u00e9todo de acesso selou o destino do Nitter como um servi\u00e7o p\u00fablico gratuito e multiplo, resultando na declara\u00e7\u00e3o do autor de que o Nitter estava morto.     <\/p>\n<p>Parte das inst\u00e2ncias se fecharam imediatamente ap\u00f3s isso, enquanto outras modificaram o c\u00f3digo para uma economia rigorosa no uso dos tokens existentes, particularmente privilegiando seu uso na obten\u00e7\u00e3o de listas de tweets das contas, resultando em mensagens de erro para todo o resto. No dia 26 de fevereiro, o tempo de vida dos \u00faltimos tokens de convidado expirou, fazendo com que todas as inst\u00e2ncias p\u00fablicas deixassem de funcionar. No entanto, maneiras relacionadas a contas de convidados est\u00e3o sendo discutidas no rastreador de bugs.    <\/p>\n<p>Uma das solu\u00e7\u00f5es radicais para o problema poderia ser a substitui\u00e7\u00e3o do Twitter pela cria\u00e7\u00e3o de um servi\u00e7o descentralizado alternativo baseado em ActivityPub e IPFS, onde o identificador principal de cada mensagem \u00e9 seu CID IPFS. Podemos imaginar a seguinte estrutura em m\u00faltiplos n\u00edveis:    <\/p>\n<li class=\"l\"> Dados, publicados originalmente no servi\u00e7o federado como na plataforma principal, e espelhados no IPFS.\n<li class=\"l\"> Os dados publicados no Twitter pelos pr\u00f3prios usu\u00e1rios, mas espelhados em suas contas na plataforma federativa por meio de uma extens\u00e3o de navegador, e da\u00ed \u2014 para o IPFS.\n<li class=\"l\"> Dados que foram descarregados do Twitter pelos pr\u00f3prios usu\u00e1rios, utilizando a fun\u00e7\u00e3o de download, e enviados para o Fediverse + IPFS atrav\u00e9s da fun\u00e7\u00e3o de upload em massa.\n<p>No entanto, os dados do ponto 3 n\u00e3o resolvem o problema da n\u00e3o participa\u00e7\u00e3o dos usu\u00e1rios do Twitter no programa de substitui\u00e7\u00e3o do Twitter.     <\/p>\n<p>Para cada identificador de postagem em cada plataforma centralizada, pode ser apropriado manter a exibi\u00e7\u00e3o de seu CID IPFS, que atua como um cache, permitindo sem o conhecimento do texto da postagem, mas conhecendo seu identificador centralizado, descobrir seu identificador descentralizado. Ao gerar um URI no IPFS (o que pode ser feito sem o upload real), o texto da postagem passa por canoniciza\u00e7\u00e3o, que envolve colocar os dados em um cont\u00eainer baseado em HTML com metadados leg\u00edveis por m\u00e1quina, normaliza\u00e7\u00e3o de Unicode, convers\u00e3o para UTF-8, substitui\u00e7\u00e3o de caracteres em branco por espa\u00e7os simples e a troca de todos os links para postagens nesta e em outras plataformas, que passam por procedimento semelhante, para URI no IPFS.     <\/p>\n<p>Cada uma das plataformas possui um documento leg\u00edvel por m\u00e1quina que descreve as regras de canoniza\u00e7\u00e3o de postagens, incluindo v\u00e1rios servi\u00e7os cujos links s\u00e3o substitu\u00eddos por URI IPFS nas postagens dessa rede. Cada postagem em cada rede \u00e9 canonizada de acordo com as regras de canoniza\u00e7\u00e3o de postagens daquela rede, em vigor no momento em que a postagem \u00e9 datada. Durante a canoniza\u00e7\u00e3o, se houver um link para uma postagem em uma das plataformas substitu\u00eddas, a implementa\u00e7\u00e3o extrai o identificador centralizado do link e verifica sua presen\u00e7a em \u00edndices confi\u00e1veis.    <\/p>\n<p>Quando presente no \u00edndice, a implementa\u00e7\u00e3o utiliza o identificador descentralizado dos \u00edndices. Na aus\u00eancia, a implementa\u00e7\u00e3o solicita a postagem por meio do link, canoniza-a e forma um identificador que pode ser colocado nos \u00edndices. A implementa\u00e7\u00e3o n\u00e3o \u00e9 obrigada a colocar a postagem solicitada na rede descentralizada. A implementa\u00e7\u00e3o pode verificar a validade do identificador no \u00edndice por meio da reprodu\u00e7\u00e3o local do processo. A implementa\u00e7\u00e3o do \u00edndice \u00e9 obrigada a verificar a validade da gera\u00e7\u00e3o dos identificadores por meio da reprodu\u00e7\u00e3o local do processo.     <\/p>\n<p>Esse processo determin\u00edstico permite gerar links imut\u00e1veis para o conte\u00fado, mesmo para tweets cujos p\u00f4steres ainda n\u00e3o participam do programa de substitui\u00e7\u00e3o do Twitter. Quando parte deles come\u00e7ar a carregar seus tweets no IPFS, o algoritmo gerar\u00e1 para eles identificadores id\u00eanticos \u00e0queles que j\u00e1 est\u00e3o sendo usados em links para eles, contanto que o \u00edndice contenha representa\u00e7\u00f5es corretas e o pr\u00f3prio conte\u00fado n\u00e3o tenha mudado.<br \/>\n<br \/>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=60673\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0438\u0437 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0445 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u043e\u0432 Nitter \u043f\u0440\u0438\u0448\u0451\u043b \u0432 \u043d\u0435\u0433\u043e\u0434\u043d\u043e\u0441\u0442\u044c. \u041f\u0440\u043e\u0435\u043a\u0442 Nitter \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u043b \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0439 \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434 \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a X.com\/Twitter \u0431\u0435\u0437 \u043d\u0430\u0432\u044f\u0437\u044b\u0432\u0430\u043d\u0438\u044f JavaScript, \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0438, \u0442\u0440\u0435\u043a\u0435\u0440\u043e\u0432 \u0438 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432. 31 \u044f\u043d\u0432\u0430\u0440\u044f \u0431\u044b\u043b\u0430 \u043f\u0440\u0435\u043a\u0440\u0430\u0449\u0435\u043d\u0430 \u0432\u044b\u0434\u0430\u0447\u0430 \u0442\u043e\u043a\u0435\u043d\u043e\u0432, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0445 \u0432 Nitter \u0434\u043b\u044f \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0443 \u0432 X.com. 26 \u0444\u0435\u0432\u0440\u0430\u043b\u044f \u0438\u0441\u0442\u0435\u043a\u043b\u043e \u0432\u0440\u0435\u043c\u044f \u0436\u0438\u0437\u043d\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 \u0438\u0437 \u0440\u0430\u043d\u0435\u0435 \u0432\u044b\u0434\u0430\u043d\u043d\u044b\u0445 \u0442\u043e\u043a\u0435\u043d\u043e\u0432, \u0447\u0442\u043e \u043f\u0440\u0438\u0432\u0435\u043b\u043e \u043a \u043f\u043e\u043b\u043d\u043e\u0439 [&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-113913","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0438\u0437 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0445 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u043e\u0432 Nitter \u043f\u0440\u0438\u0448\u0451\u043b \u0432 \u043d\u0435\u0433\u043e\u0434\u043d\u043e\u0441\u0442\u044c. \u041f\u0440\u043e\u0435\u043a\u0442 Nitter \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u043b \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0439 \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434 \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a X.com\/Twitter \u0431\u0435\u0437 \u043d\u0430\u0432\u044f\u0437\u044b\u0432\u0430\u043d\u0438\u044f JavaScript, \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0438, \u0442\u0440\u0435\u043a\u0435\u0440\u043e\u0432 \u0438 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432.\" \/>\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\/pt\/blog\/news\/prekrashhenie-sushhestvovaniya-nitter-svobodnogo-alternativnogo-frontenda-k-twitter\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_PT\" \/>\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\u041f\u0440\u0435\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0438\u044f Nitter, \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0433\u043e \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434\u0430 \u043a Twitter | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0438\u0437 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0445 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u043e\u0432 Nitter \u043f\u0440\u0438\u0448\u0451\u043b \u0432 \u043d\u0435\u0433\u043e\u0434\u043d\u043e\u0441\u0442\u044c. \u041f\u0440\u043e\u0435\u043a\u0442 Nitter \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u043b \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0439 \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434 \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a X.com\/Twitter \u0431\u0435\u0437 \u043d\u0430\u0432\u044f\u0437\u044b\u0432\u0430\u043d\u0438\u044f JavaScript, \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0438, \u0442\u0440\u0435\u043a\u0435\u0440\u043e\u0432 \u0438 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pt\/blog\/news\/prekrashhenie-sushhestvovaniya-nitter-svobodnogo-alternativnogo-frontenda-k-twitter\" \/>\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=\"2024-02-27T20:03:07+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2024-02-27T20:03:07+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\udd47Cessa\u00e7\u00e3o da exist\u00eancia do Nitter, frontend alternativo livre para o Twitter | ProHoster","description":"A \u00faltima das inst\u00e2ncias p\u00fablicas do Nitter se tornou obsoleta. O projeto Nitter desenvolveu um frontend livre para acesso ao X.com\/Twitter sem a imposi\u00e7\u00e3o de JavaScript, an\u00e1lises, rastreadores e servi\u00e7os de terceiros.","canonical_url":"https:\/\/prohoster.info\/pt\/blog\/news\/prekrashhenie-sushhestvovaniya-nitter-svobodnogo-alternativnogo-frontenda-k-twitter","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pt_PT","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\u041f\u0440\u0435\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u043d\u0438\u044f Nitter, \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u043e\u0433\u043e \u0430\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434\u0430 \u043a Twitter | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0438\u0437 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0445 \u044d\u043a\u0437\u0435\u043c\u043f\u043b\u044f\u0440\u043e\u0432 Nitter \u043f\u0440\u0438\u0448\u0451\u043b \u0432 \u043d\u0435\u0433\u043e\u0434\u043d\u043e\u0441\u0442\u044c. \u041f\u0440\u043e\u0435\u043a\u0442 Nitter \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u043b \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0439 \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434 \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a X.com\/Twitter \u0431\u0435\u0437 \u043d\u0430\u0432\u044f\u0437\u044b\u0432\u0430\u043d\u0438\u044f JavaScript, \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0438, \u0442\u0440\u0435\u043a\u0435\u0440\u043e\u0432 \u0438 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432.","og:url":"https:\/\/prohoster.info\/pt\/blog\/news\/prekrashhenie-sushhestvovaniya-nitter-svobodnogo-alternativnogo-frontenda-k-twitter","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":"2024-02-27T20:03:07+00:00","article:modified_time":"2024-02-27T20:03:07+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"113913","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":"default","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":"2026-02-08 20:22:37","updated":"2026-02-08 20:22:37","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/113913","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/comments?post=113913"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/113913\/revisions"}],"predecessor-version":[{"id":145695,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/113913\/revisions\/145695"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media?parent=113913"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/categories?post=113913"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/tags?post=113913"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}