http://www.hompydesign.com/bbs/board.php?bo_table=asp_study&wr_id=257&page=1
꼭 블로그가 아니더라도 XML RSS 는 이제 어느정도 대세가 되어가고 있는 듯합니다. 이제는 언론사나 커뮤니티 등에서도 RSS 가 나옵니다.. 그리고 #Reader나 Xpyder,FreeDemon 등의 RSS 구독기 또한 점차 넓게 사용되고 있습니다. 여기서는 이러한 XML RSS 를 구현하는 방법을 ASP 기반에서 XML 컴포넌트를 이용하여 구현하고자 합니다.
사실 RSS 를 구현할때 사실 단순히 텍스트 파일로 뿌려주고 ContentType 만 xml 로 선언해줘도 가능합니다. 그러나 조금은 다르게 해보고 싶다는 저의 호기심도 있고, 확장성과 향후 유지보수에 조금이라도 더 손쉽게 하기위해서 윈도우즈 2000 에 기본제공되어 있는 XML 관련 컴포넌트를 이용하여 구현해보았습니다. 물론 아래 소스는 지금 제 블로그 RSS 의 원형이 되고 있습니다.
한가지 주의 하실점은 XML 선언전에 어떠한 개행(\n) 이나 문자가 들어가서는 안됩니다. PHP 에서의 쿠키과 마찬가지 입니다.
<% Response.ContentType = "text/xml" Set xmlPars = Server.CreateObject("Msxml2.DOMDocument") ' 여기서 부터 rss 정보를 담는다. Set rss = xmlPars.CreateElement("rss") rss.setAttribute "version", "2.0" rss.setAttribute "xmlns:dc", "http://purl.org/dc/elements/1.1/" rss.setAttribute "xmlns:sy", "http://purl.org/rss/1.0/modules/syndication/" rss.setAttribute "xmlns:admin", "http://webns.net/mvcb/" rss.setAttribute "xmlns:rdf", "http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlPars.AppendChild(rss) 'channel 시작 Set Channel = xmlPars.CreateElement("channel") rss.AppendChild(Channel) 'title정보 Set title = xmlPars.CreateElement("title") Channel.AppendChild(title) Channel.childnodes(0).text = "블로그 제목" 'link정보 Set channel_link = xmlPars.CreateElement("link") Channel.AppendChild(channel_link) Channel.childnodes(1).text = "블로그 주소" 'descript-xion정보 Set descript-xion = xmlPars.CreateElement("descript-xion") Channel.AppendChild(descript-xion) Channel.childnodes(2).text = "블로그 설명" 'dc:language정보 Set language = xmlPars.CreateElement("dc:language") Channel.AppendChild(language) Channel.childnodes(3).text = "ko" 'image정보 Set image = xmlPars.CreateElement("image") Channel.AppendChild(image) '이미지 정보에 들어갈 것들 set i_title = xmlPars.CreateElement("title") set i_url = xmlPars.CreateElement("url") set i_width = xmlPars.CreateElement("width") set i_height = xmlPars.CreateElement("height") image.AppendChild(i_title) image.AppendChild(i_url) image.AppendChild(i_width) image.AppendChild(i_height) image.childnodes(0).text = "이미지 제목" image.childnodes(1).text = "이미지 경로" image.childnodes(2).text = "이미지 가로 사이즈" image.childnodes(3).text = "이미지 세로 사이즈" ' 여기서 부터는 포스트에 대해서 출력 ' 우선 데이터를 읽어오자 SQL = "해당되는 포스트에 대한 쿼리문" set rs = Server.CreateObject("ADODB.Recordset") rs.Open SQL,접근문자열,adOpenForwardOnly,adLockPessimistic,adCmdText ' 여기서 부터 루프를 돌리자. Do until rs.EOF ' |
'asp' 카테고리의 다른 글
FCKeditor2.2 설치 및 설정 asp버젼 (0) | 2009.08.20 |
---|---|
블로그 트랙백의 구현 (ASP) (0) | 2009.08.20 |
ASP에서 excel로 저장하기 (0) | 2009.08.20 |
쿠키(Cookies)에 대해 (0) | 2009.06.25 |
[ASP] UTF-8 지원하도록 하기 위해서 (0) | 2009.05.04 |