Kā izveidot RSS lasītāja lietotni JavaScript
RSS (Really Simple Syndication) ir standartizēts formāts, ko izmanto tiešsaistes izdevēji sindicēt to saturu citām tīmekļa vietnēm un pakalpojumiem. An RSS dokuments, pazīstams arī kā a barību, ir XML dokuments saturu, ko izdevējs vēlas izplatīt.
RSS plūsmas ir pieejamas gandrīz visās tiešsaistes ziņu vietnēs un emuāros, lai lasītāji varētu to lasīt palikt atjaunināti ar to saturu. Tās var atrast arī ar tekstu nesaistītas tīmekļa vietnes piemēram, YouTube, kur var izmantot YouTube kanāla plūsmu informēti par jaunākajiem videoklipiem.
Tiek izsauktas programmas, kas piekļūst šīm plūsmām un lasa un parāda to saturu RSS lasītāji. JavaScript var izveidot vienkāršu RSS lasītāju programmu. Šajā apmācībā mēs redzēsim, kā to izdarīt.
RSS plūsmas struktūra
RSS plūsma ir saknes elements sauc
, līdzīgs tags atrodams HTML dokumentos. Iekšpusē
tag, ir
elements, piemēram, HTML, tas ir ietver daudzus apakšelementus satur izplatīto tīmekļa vietnes saturu.
Barība parasti nes dažus Pamatinformācija piemēram, nosaukums, URL un tīmekļa vietnes un atsevišķas atjauninātas ziņas, raksti vai cits saturs tīmekļa vietnes. Šī informācija ir atrodama
, , un
elementiem.
Kad tās ir tieši klāt
, viņiem ir tīmekļa vietnes nosaukums, URL un apraksts. Kad viņi ir klāt
to glabā informāciju par atjauninātajām ziņām, tie ir tādi paši dati kā iepriekš, bet katras atsevišķās informācijas saturs
pārstāvēt.
Ir arī daži izvēles elementi kas var būt RSS plūsmā, sniedzot papildu informāciju, piemēram, attēlus vai autortiesības uz izplatīto saturu. Par tiem varat uzzināt šajā RSS 2.0 specifikācija pie cyber.harvard.edu.
Šeit ir paraugs, kā Mājas lapas RSS plūsma varētu izskatīties šādi:
Hongkiat https://www.hongkiat.com/Dizaina padomi, apmācība un iedvesmas lv-mums Vizualizējiet jebkuru CSS stilu ar CSS statistiku Kādreiz bija jautājums, cik CSS noteikumi ir stilu lapā? Vai esat kādreiz gribējis redzēt… 18/05/2017 https://www.hongkiat.com/blog/css-stylesheet-with-css-stats/Amazon Echo Show - jaunākais Alexa darbināmais Smart Device Amazon nav svešs priekšstats par viedām mājas sistēmām ar iebūvētu digitālo palīgu. Galu galā,… 17/05/2017 https://www.hongkiat.com/blog/alexa-device-amazon-echo-show/
Ievades plūsma
Mums vajag ielādējiet plūsmu izmantojot mūsu RSS lasītāja programmu. Tīmekļa vietnē var būt RSS plūsmas URL atrodas iekšpusē tagu, izmantojot
application / rss + xml
veids. Piemēram, Hongkiat.com atradīsiet šādu RSS plūsmas saiti.
Pirmkārt, pieņemsim, kā to izdarīt iegūt vietnes URL izmantojot JavaScript.
fetch (websiteUrl) .then ((res) => res.text (). tad ((htmlTxt) => var domParser = jauns DOMParser () ļaujiet doc = domParser.parseFromString (htmlTxt, 'text / html') var feedUrl = doc.querySelector ('saite [type = "application / rss + xml"]'). href)) nozvejas (() => console.error ("Kļūda, ielādējot vietni"))
The ielādēt ()
metode ir globāla metode asinhroni ielādē resursu. Tas aizņem resursa URL kā argumentu (vietnes URL mūsu kodā). Tā atgriež a Solījums
objektu, tāpēc, kad metode veiksmīgi ielādē vietni (t.i. Solījums
ir izpildīta), pirmā funkcija iekšpusē tad ()
paziņojums, apgalvojums apstrādā ielādēto atbildi (res
iepriekš minētajā kodā).
Tad ir saņemta atbilde pilnībā izlasīts teksta virknē izmantojot teksts ()
metodi. Šis teksts ir Mūsu ielādētās vietnes HTML teksts. Tāpat kā ielādēt ()
, teksts ()
arī atgriež a Solījums
objektu. Tātad, kad tas veiksmīgi izveido atbildes tekstu no atbildes plūsmas, tad ()
apstrādās šo atbildes tekstu (htmlText
iepriekš minētajā kodā).
Kad būs pieejams HTML tīmekļa vietnes teksts, mēs izmantojam DOMParser API
uz analizēt to DOM dokumentā. DOMParser
analizē XML / HTML teksta virkni DOM dokumentā. Tās metode, parseFromString ()
, ņem divi argumenti: izdomāts teksts un satura veids.
Tad no izveidotā DOM dokumenta mēs Atrodi href
attiecīgās vērtības tag izmantojot
querySelector ()
metodi, lai iegūtu plūsmas URL.
Plūsmas analīze un attēlošana
Kad būsim saņēmuši vietnes vietnes URL, mums ir nepieciešams ielādējiet un lasiet RSS dokumentu atrasts šajā URL.
fetch (feedUrl) .then ((res) => res.text (). tad ((xmlTxt) => var domParser = jauns DOMParser () ļaujiet doc = domParser.parseFromString (xmlTxt, 'text / xml') doc .querySelectorAll ('item') .EE ((item) => let h1 = document.createElement ('h1') h1.textContent = item.querySelector ('title'). textContent document.querySelector ('output'). appendChild (h1))))
Tāpat kā mēs ielādējām un analizējām tīmekļa vietni, tagad mēs iegūt un analizēt XML plūsmu DOM dokumentā. Lai to panāktu, mēs izmantojam 'text / xml'
satura veids parseFromString ()
metodi.
Parsētā dokumentā mēs atlasiet visu
elementiem izmantojot querySelectorAll
metode un cilpa caur katru.
Katrā elementā mēs varam piekļuves tagus patīk
,
, un , kas satur barības saturu. Un mūsu vienkāršā RSS lasītāja lietojumprogramma tiek veikta, jūs varat veidot ielādēto plūsmu saturu pēc vēlēšanās.
Github demo
Jūs varat pārbaudīt detalizētāka versija no koda, kas izmantots šajā amatā mūsu Github repo. Detalizētāka versija ielādē trīs plūsmas (Mozilla Hacks, Hongkiat un Webkit emuārs) izmantojot JSON failu un arī pievieno dažus CSS stilus RSS lasītājam.