Како креирати апликацију РСС читача у ЈаваСцрипту
РСС (Реалли Симпле Синдицатион) је стандардизовани формат који користе издавачи на мрежи синдикат њиховог садржаја другим сајтовима и услугама. Ан РСС доцумент, такође познат као а напајање, је КСМЛ доцумент са садржајем који издавач жели да дистрибуира.
РСС извори доступни су на готово свим веб сајтовима и блоговима на мрежи за читаоца останите у току са њиховим садржајем. Могу се наћи и на веб сајтове који нису засновани на тексту као што је ИоуТубе, где можете да користите феед ИоуТубе канала информисан о најновијим видео записима.
Позивају се програми који приступају овим феедовима и читају и приказују њихов садржај РСС читачи. Можете креирати једноставан РСС читач у ЈаваСцрипт-у. У овом водичу ћемо видети како.
Структура РСС феед-а
РСС феед има коријенски елемент зове
, слично налази се у ХТМЛ документима. Унутар
таг, постоји
елемент, врста као у ХТМЛ-у укључује многе поделементе садржи дистрибуирани садржај веб сајта.
Храна обично носи нешто основне информације као што су наслов, УРЛ и опис веб сајта и појединачне ажуриране постове, чланке или друге садржаје тог веб сајта. Ове информације се налазе у
, , и
елементима.
Када су те ознаке директно присутни унутра
, они имају наслов, УРЛ и опис веб сајта. Када су присутан унутра
то садржи информације о ажурираним постовима, они представљају исту информацију као и раније, али и појединачне садржаје који сваки од њих
заступати.
Има и неких изборни елементи који могу бити присутни у РСС фееду, пружајући додатне информације као што су слике или ауторска права на дистрибуирани садржај. О томе можете сазнати у овоме РСС 2.0 спецификација ат цибер.харвард.еду.
Ево примера како РСС феед веб сајта можда изгледа овако:
Хонгкиат хттпс://ввв.хонгкиат.цом/Савјети за дизајн, водич и инспирација ен-ус Замислите било који ЦСС стил са ЦСС статистиком Јесте ли се икада запитали колико је ЦСС правила у стилу? Или сте икада желели да видите ... 18/05/2017 хттпс://ввв.хонгкиат.цом/блог/цсс-стилесхеет-витх-цсс-статс/Амазон Ецхо Схов - Најновији паметни уређај са погоном на Алека Амазон није чудан концепту паметних кућних система са уграђеним дигиталним помоћником. На крају крајева,… 17/05/2017 хттпс://ввв.хонгкиат.цом/блог/алека-девице-амазон-ецхо-схов/
Дохваћање хране
Морамо да дохвати феед са нашом апликацијом РСС читача. На веб локацији може бити УРЛ РСС фееда пронађено унутар помоћу ознаке
апплицатион / рсс + кмл
тип. На пример, наћи ћете следећу везу са РСС каналом на сајту Хонгкиат.цом.
Прво, да видимо како добијте УРЛ адресу веб сајта усинг ЈаваСцрипт.
фетцх (вебситеУрл). тхен ((рес) => рес.тект ().) ((хтмлТкт) => вар домПарсер = нови ДОМПарсер () нека доц = домПарсер.парсеФромСтринг (хтмлТкт, 'тект / хтмл') вар феедУрл = доц.куериСелецтор ('линк [типе = "апплицатион / рсс + кмл"]'). хреф)). цатцх (() => цонсоле.еррор ('Грешка при дохваћању веб локације'))
Тхе фетцх ()
метода је глобални метод који асинхроно преузима ресурс. УРЛ ресурса узима као аргумент (УРЛ веб сајта у нашем коду). То враћа а Промисе
објекта, тако да када метод успешно дође до веб сајта (тј Промисе
је испуњена), прва функција унутар онда()
изјава рукује преузетим одговором (рес
у горњем коду).
Добијен одговор је тада потпуно читати у текстуални низ помоћу текст ()
метода. Овај текст представља ХТМЛ текст наше преузете веб-локације. Као фетцх ()
, текст ()
такође враћа а Промисе
објекат. Дакле, када успешно креира текст одговора из одговора, онда()
обрадиће текст одговора (хтмлТект
у горњем коду).
Када је ХТМЛ текст веб-локације доступан, користимо га ДОМПарсер АПИ
до анализирати га у ДОМ документ. ДОМПарсер
анализира КСМЛ / ХТМЛ текстуални низ у ДОМ документ. Његова метода, парсеФромСтринг ()
, траје два аргумента: тхе текст који треба анализирати анд тхе Тип садржаја.
Затим, из креираног ДОМ документа, ми финд тхе хреф
вриједност релевантне таг помоћу
куериСелецтор ()
да бисте добили УРЛ фееда.
Анализирање и приказивање фееда
Када добијемо УРЛ адресу веб сајта, морамо преузмите и прочитајте РСС документ пронађено на тој УРЛ адреси.
фетцх (феедУрл). тхен ((рес) => рес.тект ().) ((кмлТкт) => вар домПарсер = нови ДОМПарсер () нека доц = домПарсер.парсеФромСтринг (кмлТкт, 'тект / кмл') доц форЕацх ((итем) => нека х1 = доцумент.цреатеЕлемент ('х1') х1.тектЦонтент = итем.куериСелецтор ('титле'). тектЦонтент доцумент.куериСелецтор ('оутпут'). аппендЦхилд (х1))))
На исти начин као што смо преузимали и анализирали веб страницу, сада смо добијте и анализирајте КСМЛ феед у ДОМ документ. Да бисмо то постигли, користимо 'тект / кмл'
тип садржаја у парсеФромСтринг ()
метода.
У анализираном документу, ми изаберите све
елементи помоћу куериСелецторАлл
метода и кроз сваку петљу.
Унутар сваког елемента можемо приступне ознаке као
,
, и , који носе садржај хране. И наша једноставна РСС читач апликација је готова, можете стилизовати садржај преузетих феедова како желите.
Гитхуб демо
Можете погледати детаљнија верзија кода који се користи у овом посту у нашем Гитхуб репо-у. Детаљнија верзија дохвата три фееда (Мозилла Хацкс, Хонгкиат и Вебкит блог) користећи ЈСОН датотеку и додаје неке ЦСС стилове у РСС читач.