Úvodná » kódovanie » Ako vytvoriť aplikáciu RSS Reader v jazyku JavaScript

    Ako vytvoriť aplikáciu RSS Reader v jazyku JavaScript

    RSS (Really Simple Syndication) je štandardizovaný formát používaný online vydavateľmi syndikovať ich obsah na iné webové stránky a služby. Dokument RSS, tiež známy ako a krmivo, je Dokument XML obsah, ktorý chce vydavateľ distribuovať.

    RSS kanály sú k dispozícii na takmer všetkých internetových spravodajských webových stránkach a blogoch pre svojich čitateľov zostaňte v aktuálnom stave s obsahom. Môžu byť tiež nájdené webové stránky bez textu napríklad YouTube, kde môžete použiť zdroj kanálu YouTube o najnovších videách.

    Zobrazia sa programy, ktoré pristupujú k týmto kanálom a čítajú a zobrazujú ich obsah Čítačky RSS. V programe JavaScript môžete vytvoriť jednoduchý program na čítanie RSS. V tejto príručke uvidíme ako to.

    Štruktúra RSS kanálu

    RSS kanál má koreňový prvok volal , podobne ako tag nájdený v dokumentoch HTML. Vnútri tag, existuje a element, druh ako v HTML, že obsahuje mnoho čiastkových prvkov ktoré obsahujú distribuovaný obsah webových stránok.

    Krmiva zvyčajne nesú niektoré základné informácie ako je názov, adresa URL a popis webovej stránky a webovej stránky individuálne aktualizované príspevky, články alebo iný obsah tejto internetovej stránky. Tieto informácie sa nachádzajú v </code>, <code><link></code>, a <code><description></code> prvkov, resp.</p> <p>Keď sú tieto značky <strong>priamo prítomné vo vnútri <code><channel></code></strong>, obsahujú názov, adresu URL a popis webovej stránky. Keď sú <strong>prítomný vo vnútri <code><item></code></strong> že <strong>uchováva informácie o aktualizovaných príspevkoch</strong>, predstavujú rovnaké informácie ako predtým, ale údaje o jednotlivých obsahoch <code><item></code> predstavovať.</p> <p>Existujú aj niektoré <strong>voliteľné prvky</strong> ktoré môžu byť prítomné v informačných kanáloch RSS, poskytujúce dodatočné informácie, ako sú obrázky alebo autorské práva na distribuovaný obsah. Môžete sa o nich dozvedieť v tomto <strong>Špecifikácia RSS 2.0</strong> na cyber.harvard.edu.</p> <p>Tu je ukážka toho, ako <strong>RSS kanál na webovej stránke</strong> môže vyzerať takto:</p> <pre name="code"> <rss version="2.0"> <channel> <title>Hongkiat https://www.hongkiat.com/ Tipy pre návrh, výučbu a inšpirácie en-us Vizualizujte akúkoľvek šablónu CSS s štatistikami CSS Čakalo ste niekedy, koľko pravidiel CSS obsahuje štýl? Alebo ste niekedy chceli vidieť ... 18/05/2017 https://www.hongkiat.com/blog/css-stylesheet-with-css-stats/ Amazon Echo Show - najnovšie Alexa-powered Smart zariadenia Amazon nie je čudný pojem inteligentných domácich systémov s integrovaným digitálnym asistentom. Koniec koncov, ... 17/05/2017 https://www.hongkiat.com/blog/alexa-device-amazon-echo-show/

    Načíta sa zdroj

    Musíme načítať krmivo s našou aplikáciou čítačky RSS. Na webovej stránke môže byť adresa URL RSS kanálu nájsť vo vnútri značku pomocou Aplikácia / rss + xml typ. Napríklad nájdete nasledujúci odkaz RSS feed na Hongkiat.com.

      

    Po prvé, pozrime sa získať adresu URL informačných kanálov webových stránok pomocou jazyka JavaScript.

     fetch (webUrl) .then ((res) => res.text ()) a potom ((htmlTxt) => var domParser = nový DOMParser feedUrl = doc.querySelector ('link [type = "application / rss + xml"]). 

    načítanie () metóda je globálna metóda asynchrónne získava zdroj. Získa URL adresy zdroja ako argument (URL webovej stránky v našom kóde). to vráti a sľub objekt, takže keď metóda úspešne načíta webovú stránku (tzn sľub je splnená), prvá funkcia vo vnútri potom () výkaz spracováva vytiahnutú odpoveď (res vo vyššie uvedenom kóde).

    Vyndaná odpoveď je potom plne čítať do textového reťazca pomocou Text () metóda. Tento text predstavuje HTML text našej načítanej webovej stránky. Páči sa mi to načítanie (), Text () tiež vráti a sľub objekt. Takže, keď úspešne vytvorí text odozvy z toku odpovedí, potom () spracuje tento text odpovede (htmlText vo vyššie uvedenom kóde).

    Akonáhle je k dispozícii text HTML stránky, používame ho DOMParser API na analyzovať ho do dokumentu DOM. DOMParser analyzuje textový reťazec XML / HTML do dokumentu DOM. Jeho metóda, parseFromString (), berie dva argumenty: text, ktorý sa má analyzovať a Druh obsahu.

    Potom z vytvoreného dokumentu DOM, my nájsť href príslušnej hodnoty štítok pomocou querySelector () pre získanie adresy URL kanála.

    Parsovanie a zobrazovanie informačného kanála

    Akonáhle sme dostali URL krmivu webových stránok, musíme načítať a čítať dokument RSS nájdené na tejto adrese URL.

     (), potom ((xmlTxt) => var domParser = nový DOMParser () nechajte dokument doc = domParser.parseFromString (xmlTxt, 'text / xml') doc .querySelectorAll ('položka') forEach ((položka) => let h1 = document.createElement ('h1') h1.textContent = item.querySelector ('title') textContent document.querySelector ('výstup'). appendChild (h1))) 

    Rovnako ako sme si vybrali a analyzovali webové stránky, teraz my získať a analyzovať zdroj XML do dokumentu DOM. Na dosiahnutie tohto cieľa používame 'Text / xml' typ obsahu v parseFromString () metóda.

    V analyzovanom dokumente sme my vyberte všetky prvky pomocou querySelectorAll metóda a cez každú z nich.

    Vo vnútri každého prvku môžeme prístupové značky Páči sa mi to </code>, <code><description></code>, a <code><link></code>, ktoré nesú obsah krmív. A naša jednoduchá aplikácia na čítanie RSS je vykonaná, môžete štýl obsahu načítaných kanálov podľa vlastného želania.</p> <h4>Github demo</h4> <p>Môžete sa pozrieť na <strong>podrobnejšiu verziu</strong> kódu použitého v tomto príspevku v našom repo Github. Podrobnejšia verzia <strong>vyberie tri kanály</strong> (Mozilla Hacks, Hongkiat a blog Webkit) <strong>pomocou súboru JSON</strong> a tiež pridá niektoré štýly CSS do čítačky RSS.</p> <div class="rek-block"> <center> <ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-6284591903398394" data-ad-slot="6432271471" data-ad-format="auto" data-full-width-responsive="true"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </center> </div> </div> </div> <div class="col-md-4"> <div class="bar"> <div class="rek-block"> <center> <ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-6284591903398394" data-ad-slot="6432271471" data-ad-format="auto" data-full-width-responsive="true"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </center> </div> <div class="barpost"> <div class="bar-post-img"><a href="/articles/howto/how-to-create-a-secretly-disguised-folder-without-extra-software.html"><img src="//savtec.org/img/images_7/how-to-create-a-secretly-disguised-folder-without-extra-software_11.png" alt=""></a></div> <div class="bar-post-h1"> <a href="/articles/howto/how-to-create-a-secretly-disguised-folder-without-extra-software.html">Ako vytvoriť tajne skryté zložky bez extra softvéru</a> </div> </div> <div class="barpost"> <div class="bar-post-img"><a href="/articles/computer-tips/how-to-create-a-secured-and-locked-folder-in-windows-xp.html"><img src="//savtec.org/img/images/how-to-create-a-secured-and-locked-folder-in-windows-xp.jpg" alt=""></a></div> <div class="bar-post-h1"> <a href="/articles/computer-tips/how-to-create-a-secured-and-locked-folder-in-windows-xp.html">Ako vytvoriť zabezpečenú a zamknutú zložku v systéme Windows XP</a> </div> </div> <div class="barpost"> <div class="bar-post-img"><a href="/articles/coding/how-to-create-a-responsive-navigation.html"><img src="//savtec.org/img/images_2/how-to-create-a-responsive-navigation.jpg" alt=""></a></div> <div class="bar-post-h1"> <a href="/articles/coding/how-to-create-a-responsive-navigation.html">Ako vytvoriť zodpovednú navigáciu</a> </div> </div> </div> </div> </div> </div> <div class="prevnext"> <div class="container"> <div class="row"> <div class="col-md-6"> <div class="post"> <div class="prevnext-title">Ďalší článok</div> <div class="post-img"><a href="/articles/howto/how-to-create-a-search-shortcut-on-the-desktop-in-windows-8-1.html"> <img src="//savtec.org/img/images_7/how-to-create-a-search-shortcut-on-the-desktop-in-windows-81_6.png" alt=""> </a></div> <div class="post-h1"> <a href="/articles/howto/how-to-create-a-search-shortcut-on-the-desktop-in-windows-8-1.html">Ako vytvoriť odkaz na vyhľadávanie na pracovnej ploche v systéme Windows 8.1</a> </div> </div> </div> <div class="col-md-6"> <div class="post"> <div class="prevnext-title">Predchádzajúci článok</div> <div class="post-img"><a href="/articles/smart-home/how-to-create-a-routine-with-amazon-alexa.html"> <img src="//savtec.org/img/images/how-to-create-a-routine-with-amazon-alexa.jpg" alt=""> </a></div> <div class="post-h1"> <a href="/articles/smart-home/how-to-create-a-routine-with-amazon-alexa.html">Ako vytvoriť rutinu s Amazon Alexa</a> </div> </div> </div> </div> </div> </div> <footer> <div class="container"> <div class="langs-block"> <ul class="langs-list"> <li class="site-lang"><a href="https://www.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-TH"></i></a></li> <li class="site-lang"><a href="https://de.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-DE"></i></a></li> <li class="site-lang"><a href="https://ar.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-AE"></i></a></li> <li class="site-lang"><a href="https://bg.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-BG"></i></a></li> <li class="site-lang"><a href="https://cs.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-CZ"></i></a></li> <li class="site-lang"><a href="https://da.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-DK"></i></a></li> <li class="site-lang"><a href="https://el.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-GR"></i></a></li> <li class="site-lang"><a href="https://es.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-ES"></i></a></li> <li class="site-lang"><a href="https://et.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-EE"></i></a></li> <li class="site-lang"><a href="https://fi.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-FI"></i></a></li> <li class="site-lang"><a href="https://fr.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-FR"></i></a></li> <li class="site-lang"><a href="https://he.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-IL"></i></a></li> <li class="site-lang"><a href="https://hi.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-IN"></i></a></li> <li class="site-lang"><a href="https://hr.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-HR"></i></a></li> <li class="site-lang"><a href="https://hu.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-HU"></i></a></li> <li class="site-lang"><a href="https://id.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-ID"></i></a></li> <li class="site-lang"><a href="https://it.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-IT"></i></a></li> <li class="site-lang"><a href="https://ja.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-JP"></i></a></li> <li class="site-lang"><a href="https://ko.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-KR"></i></a></li> <li class="site-lang"><a href="https://lt.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-LT"></i></a></li> <li class="site-lang"><a href="https://lv.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-LV"></i></a></li> <li class="site-lang"><a href="https://ms.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-MY"></i></a></li> <li class="site-lang"><a href="https://nl.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-NL"></i></a></li> <li class="site-lang"><a href="https://no.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-NO"></i></a></li> <li class="site-lang"><a href="https://pl.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-PL"></i></a></li> <li class="site-lang"><a href="https://pt.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-PT"></i></a></li> <li class="site-lang"><a href="https://ro.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-RO"></i></a></li> <li class="site-lang"><a href="https://ru.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-RU"></i></a></li> <li class="site-lang"><a href="https://sk.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-SK"></i></a></li> <li class="site-lang"><a href="https://sl.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-SI"></i></a></li> <li class="site-lang"><a href="https://sr.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-RS"></i></a></li> <li class="site-lang"><a href="https://sv.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-SE"></i></a></li> <li class="site-lang"><a href="https://tr.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-TR"></i></a></li> <li class="site-lang"><a href="https://ua.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-UA"></i></a></li> <li class="site-lang"><a href="https://vi.savtec.org/articles/coding/how-to-create-a-rss-reader-app-in-javascript.html"><i class="flag flag-VN"></i></a></li> </ul> </div> <div class="row align-items-center"> <div class="col-md-3"> © <script> var currentTime = new Date(); var year = currentTime.getFullYear(); document.write(year); </script> <a href="/">Savtec</a> </div> <div class="col-md-9"> Užitočné informácie a tipy na vývoj webových aplikácií. Programovanie, webdesign, CSS, HTML, JAVASCRIPT. Nakonfigurujte a preinštalujte Windows. Tvorba webov a aplikácií od nuly. </div> </div> </div> </footer> <link rel="stylesheet" href="css/flags.css"> <script src="https://unpkg.com/simple-jekyll-search@1.5.0/dest/simple-jekyll-search.min.js"></script> <script> SimpleJekyllSearch({ searchInput: document.getElementById('search-input'), resultsContainer: document.getElementById('results-container'), json: '/search.json', searchResultTemplate: '<li><a href="{url}">{title}</a></li>' }) </script> <link rel="stylesheet" type="text/css" href="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.1.0/cookieconsent.min.css" /> <script src="//cdnjs.cloudflare.com/ajax/libs/cookieconsent2/3.1.0/cookieconsent.min.js"></script> <script> window.addEventListener("load", function(){ window.cookieconsent.initialise({ "palette": { "popup": { "background": "#edeff5", "text": "#838391" }, "button": { "background": "#4b81e8" } }, "theme": "classic", "position": "bottom-right" })}); </script> </body> </html>