Feedreader casalingo in Coldfusion

Veloce, velocissimo… un light post per buttare su in 4 e 4 = 8 un feed reader casalingo con il nostro beneamato coldfusion (ci sono ancora developer in Italia, o è rimasto solo Andrea Veggiani e io, ormai a tempo perso?). Io l’ho creato sulla base della struttura di RSS fornita da FeedBurner, questo il suo header:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/atom10full.xsl" type="text/xsl" media="screen"?>
<?xml-stylesheet href="http://feeds.feedburner.com/~d/styles/itemcontent.css" type="text/css" media="screen"?>
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:gr="http://www.google.com/schemas/reader/atom/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0">

Vabbè dai iniziamo: dichiariamo una variabile con il nostro feed e ci creiamo un array di strutture per poterlo scorrere con facilità. Chiaramente estrate quello che vi serve e adattatelo alle vostre esigenze. Ecco il codice:

 

<cfset feedUrl = "http://feeds.feedburner.com/bloggeritaliani">
<cfhttp url="#feedUrl#" method="get" resolveurl="no"></cfhttp>
<cfset myFeedXml = xmlParse(trim(cfhttp.FileContent))>
<cfloop from="1" index="i" to="#arrayLen(myFeedXml.feed.entry)#">
<cfset elemento = myFeedXml.feed.entry[i]>
<cfif isDefined("elemento.CONTENT")>
<cfset myFeedI = myFeedI + 1>
<cfset myFeed[myFeedI] = structNew()>
<cfset elementohtml = elemento.CONTENT>
<cfset elementohtml = replaceNoCase(elementohtml, "&lt;","<","all")>
<cfset elementohtml = replaceNoCase(elementohtml, "&gt;",">","all")>
//converto in plain text... se volete anche voi!
<cfset elementohtml = ReReplace(elementohtml, "<[^>]*>", "", "ALL")>
<cfset elementohtml = left(elementohtml,150) & "...">
<cfset myFeed[myFeedI].testo = elementoHTML>
<cfset myFeed[myFeedI].titolo = elemento.title.XmlText>
<cfset myFeed[myFeedI].data = elemento.published>
<cfset myFeed[myFeedI].link = elemento.id.XmlAttributes["gr:original-id"]>
<cfset myFeed[myFeedI].autore = elemento.AUTHOR>
</cfif>
</cfloop>

 

E adesso non chiedetemi di spiegarla perchè è facilissimo. Se volete fare degli esperimenti comunque non vi resta che partire da myFeedXml e guardare le varie strutture con lo splendido CFDUMP!

Un esempio funzionante, lo chiedete sempre, su bloggeritaliani.com

Loading Facebook Comments ...

6 pensieri su “Feedreader casalingo in Coldfusion

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *