메뉴 건너뛰기

라이온하트 2nd edition

홈페이지를 새롭게 리뉴얼합니다.

조회 수 96814 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

최근에는 공공기관들이나 포탈사이트등에서 자료 공개를 API로 하는데  REST을 제공해준다.

기존에는 SOAP 형식으로 제공되었으나 사용하기 간단한 REST 방식이 뜨고있다.

특히 정부3.0(http://data.go.kr)에서 데이터들이 API로 많이 오픈이 되었는데 여기서 사용하는 것이 REST방식이다.


아래의 예제는 해당 URL에서 POST로 데이터를 보내고 REST로 XML을 받아서 각각의 노드에 접하는 방식을 설명한다.


1.우선 아래와 같은 REST 수신결과 XML이 있다고 가정합니다.


01.<response>
02. 
03.<items>
04.  <item>
05.    <nameData>홍진현</nameData>
06.   <item>
07.   <item>
08.    <nameData>호구방위대</nameData>
09.   <item>
10.</items>
11. 
12.</response>



2.소스


01.WebClient wc = null;
02.XmlDocument doc = null;
03.XmlNode root = null;
04. 
05.wc = new WebClient() { Encoding = Encoding.UTF8 };
06.doc = new XmlDocument();
07. 
08.try
09.{
10.    List<string> ltReturn = new List<string>();
11. 
12.    LoadedXML = wc.DownloadString(new Uri("http://TargetURL?param1=1"));
13.    doc.LoadXml(LoadedXML);
14. 
15.    
16.    root = doc.SelectSingleNode("response");
17. 
18.    XmlNode ItemsList = root.SelectSingleNode("items");
19. 
20.     
21.    foreach (XmlNode nowItem in ItemsList)
22.    {
23.       ltReturn.Add(nowItem.SelectSingleNode("nameData").InnerText); // nowItem[0].InnerText
24. 
25.    }
26. 
27.    return ltReturn;
28. 
29.}
30.catch (Exception)
31.{
32.    return null;
33.}
34.finally
35.{
36.    doc = null;
37.    root = null;
38.    wc.Dispose();
39.}



SelectSingleNode 를 통해서 노드를 선택하거나  nowItem[0] 처럼 노드를 배열처럼 사용해서 값들을 불러 올 수 있습니다.


자료출처: http://hongjinhyeon.tistory.com/74


  1. httpd ntsysv 등록

  2. [스크랩] bind 9.8.x 설정방법(설명 자세함)

  3. [스크랩] fdisk로 파티션 삭제하기

  4. [스크랩] PHP 쓰레드 흉내내기

  5. 관련기사 및 블로그 포스팅 등등

  6. CentOS 7 firewall 설정

  7. CentOS 7 minimal server 설치기(최소설치)

  8. [PostgreSQL] DB 덤프 & 복구

  9. 도메인 가격비교

  10. 동영상 자막, 뱁션

  11. Centos 7 Run level 변경방법

  12. Centos 7, MariaDB RPM 설치

  13. JSON.net dll download URL

  14. [스크랩] c# binary 파일을 사용해 csv 파일 빨리 읽기

  15. C# 상관계수 (Correl 함수) 구현

  16. [스크랩] Centos 7 방화벽 관련자료

  17. [스크랩] 리눅스에서 ip 명령어로 IP 설정하는 방법

  18. Centos 7에서 APM 설치

  19. [스크랩] C# 에서 XML 특정 하위노드 및 자식노드를 좀 간단히 읽어보기

  20. [스크랩] XML 다루기 - REST 데이터 받아서 처리하기

Board Pagination ‹ Prev 1 2 3 4 5 6 7 8 9 10 ... 12 Next ›
/ 12