앱을 제작하면서 서버와 값을 주고 받는 일이 많다. (현재 내가 제작하는 앱은 값을 주고, 결과를 XML로 받는다.) 값을 주고 받기에 편하기 위해 ASIHTTP 라이브러리를 이용했다. 1. 라이브러리를 다운 받는다. http://allseeing-i.com/ASIHTTPRequest/ 다운 받으면 Iphone용 프로젝트를 열어서 'External' 폴더와 'Classes' 폴더를 나의 프로젝트로 옮겨 넣는다. 옮긴후 'Tests' 폴더는 삭제한다. 테스트 한 결과 에러만 잔득 만들어 내고 필요 없다. 2. 프레임웍 추가 http://allseeing-i.com/ASIHTTPRequest/Setup-instructions 여기에도 나와있듯이 아래와 같은 프레임웍을 추가한다. CFNetwork.framework SystemConfiguration.framework, MobileCoreServices.framework, CoreGraphics.framework libz.1.2.3.dylib libxml2.dylib 3. Header Search Paths 추가 ${SDK_DIR}/usr/include/libxml2 4. 이후 코딩은 http://allseeing-i.com/ASIHTTPRequest/How-to-use 이곳 참고하면 된다. 5. 값을 보내고 받은 xml은 NSString 형태로 받게 되고, 아래와 같이 xml로 바꿔서 파싱해주면 된다. (NSString 으로 받은걸 좀더 쉽게 파싱하는 방법이 있으면 좋으련만, 서치한걸로는 이 방법이 최선이라 생각된다.) NSData *data = [response dataUsingEncoding:NSUTF8StringEncoding]; NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithData:data ]; 6. xml 파싱은 NSXMLParser 이용하면 된다. 따로 포스트 할 예정이다. (많이 복잡한 xml이라면 다른 라이브러리를 사용하겠지만 결과로 받은 xml은 짧으므로 기본 클래스를 이용할 예정)
카테고리 없음2012. 5. 30. 13:30