PHP 에서 XML 기술 을 이용 하여 원 격 서비스 구축(상)

미래의 웹 은 서비스 중심의 웹,XMLRPC 표준 은 작성 과 응용 서 비 스 를 매우 간단하게 만 들 었 다.본문 소개 XMLRPC 표준 및 PHP 구현,PHP 에서 XML 을 개발 하 는 방법 을 실례 를 통 해 시범RPC 서비스 와 클 라 이언 트 프로그램.1.서비스 식 웹 은 콘 텐 츠 제공 업 체 가 사용 하 는 간단 한 방법 부터 UDDI(Universal Description,Discovery and Integration)의 미래 구상 까지 업계 에서'서비스 식 웹'에 대한 설명 과 평론 이 많다.웹 의 초창기 단계 에서 볼 때,그것 은 단지 문서 의 집산지 일 뿐,제공 하 는 것 은 단지 탐색 할 수 있 는 정보 일 뿐이다.웹 의 발전 에 따라 웹 에서 서 비 스 를 운영 하 는 것 은 점점 매력 적 이다.앞으로 웹 은 기업 이 고객 과 다른 기업 에 편리 한 서 비 스 를 제공 하 는 매개체 가 될 것 이다.B2B 와 B2C 모드 간 의 협동 은 일종 의 서비스 식 웹 으로 볼 수 있다.중요 한 문 제 는 웹 에서 도대체 어떤 서 비 스 를 제공 할 수 있 느 냐 는 것 이다.웹 이 제공 할 수 있 는 서 비 스 는 매우 많은 데,그 중 일부 서 비 스 는 현재 이미 사용 되 고 있 으 며,일부 서 비 스 는 머지않아 나타 날 것 이다.문 제 를 설명 하기 위해 웹 을 통 해 제공 할 수 있 는 서비스 인 테 마 를 위 한 수직 검색엔진 을 보 여 줍 니 다.사용자 가 정 보 를 찾 을 수 있 도록 제공 하 는 지식 창고.사용자 가 문 제 를 물 어 볼 수 있 는 전문가 시스템.은행 서비스.뉴스 와 정보 출판 서비스.디지털 결제 관련 서비스.도형 처리 서비스.위생 과 건강 서비스.그렇다면 기업 과 조직 이 웹 을 통 해 서 비 스 를 제공 하 는 정확 한 경 로 는 무엇 일 까?이것 은 매우 중요 한 문제 다.오늘날 일부 서 비 스 는 HTML 인터페이스 를 제공 합 니 다.그들 은 문서 의 형식 을 통 해 서 비 스 를 제공 하지만 서비스 인터페이스 뒤에 무엇 을 숨 기 고 있 습 니까?웹 을 점령 하 는 경쟁 에서 웹 브 라 우 저 는 외 롭 지 않 습 니 다.모 바 일 전화,핸드 메 이 드 장치 와 전자레인지 같은 장 치 는 모두 웹 을 방문 하고 데이터 베 이 스 를 조회 하 며 데 이 터 를 변환 하고 정 보 를 추출 하려 고 합 니 다.진정한 서비스 식 웹 을 실현 하려 면 표현 층(HTML)아래 또 다른 층 이 있어 야 한다.2.XMLRPC 표준 XML 은 아마도 최근 10 년 동안 가장 중요 한 표준 일 것 이다.XML 어휘 표(Vocabulary)는 기업 구조 서비스 환경 에 초석 을 제공 했다.서비스 웹 을 구축 하려 면 XML 을 배 워 야 합 니 다.RPC 표준,이것 은 XML 때 문 만 이 아 닙 니 다.RPC 는 서 비 스 를 웹 에 올 리 는 데 유용 하 며 XML 때문에RPC 는 이미 성형 되 어 사용 하기 쉬 운 표준 이다.B2B 서비스 에 있어 서 서 서 비 스 를 제공 하 는 기준 은 매우 중요 하 다.공동으로 기준 을 따 르 는 회 사 는 다른 회사 가 제공 하 는 서 비 스 를 이용 하여 빠 른 성장 을 얻 을 수 있다.각종 개인 적 인 서비스 기준 위 에 진정한 서비스 식 웹 을 구축 할 수 있다 고 상상 할 수 없고 서 비 스 는 반드시 지 킬 수 있 는 기준 이 있어 야 한다.XML_RPC 는 인터넷 분산 처 리 를 위 한 표준 이다.RPC 는 Remote Procedure Call(원 격 프로 세 스 호출)의 줄 임 말로 원 격 호출 메커니즘 으로 다른 기기 에 머 물 수 있 고 다른 언어 로 작 성 될 수 있 는 과정 을 호출 하 는 데 사 용 됩 니 다.원 격 프로 세 스 호출 은 분포 식 컴 퓨 팅 의 중요 한 버팀목 이다.예 를 들 어 분산 컴 퓨 팅 환경 에서 우 리 는 다른 기기 에서 실행 되 는 덧셈 과 뺄셈 작업 을 수행 하 는 과정 을 찾 고 이용 할 수 있다.덧셈 작업 을 수행 하 는 과정 은 APL 로 작성 되 고 RS 6000 기기 에서 실 행 될 수 있 으 며 뺄셈 작업 을 수행 하 는 과정 은 C 로 작성 되 고 유 닉 스에 서 실 행 될 수 있다.이런 분포 식 계산 기 를 사용 하려 는 다른 개발 자 들 도 이 를 이용 할 수 있 거나 다른 더 좋 은 계산 기 를 선택 할 수 있다.RPC 에서 프로 세 스(Procedure)는 가장 주요 한 구성 요소 이 고 서버 가 제공 하 는 것 은 클 라 이언 트 가 호출 하 는 과정 이다.프로 세 스 는 파 라 메 터 를 받 고 결 과 를 되 돌려 줍 니 다.XML_RPC 는 HTTP 를 프로 토 콜 캐리어 로 하고 데 이 터 를 보 내 고 받 는 XML 어휘 표를 통 해 RPC 메커니즘 을 구현 한다.XML_RPC 서버 수신 XMLRPC 요청 및 XML 반환RPC 응답,XMLRPC 클 라 이언 트 전송 XMLRPC 요청 및 받 기 XMLRPC 응답.서버 와 클 라 이언 트 는 XMLRPC 표준 요구 사항 은 응답 과 요청 을 처리 합 니 다.3.XMLRPC 프로 토 콜 완전한 XMLRPC 규범http://www.xmlrpc.com/spec찾 아.다음은 그 요점 설명 이다.3.1 XML_RPC 요청 XMLRPC 요청 은 HTTP POST 요청 일 것 입 니 다.본문 은 XML 형식 입 니 다.요청 한 XML 부분 형식 은 다음 과 같 습 니 다:<?xml version="1.0" ?> <methodCall><methodName>examples.getStateName</methodName><params><param><value><i4>41</i4></value></param></params></params></methodCall>지 정 된 데 이 터 를 어디로 보 내 는 URL 은 여기에 지정 되 지 않 았 습 니 다.서버 가 RPC 처리 에 만 사용 된다 면'/'일 수 있 습 니 다.상기 XML 문서 의 유효 하중 은'methodCall'구조 입 니 다.methodCall 은"methodName"하위 요 소 를 포함 해 야 합 니 다."methodName"하위 요 소 는 호출 방법 을 설명 하 는 문자열 을 포함 합 니 다."methodName"의 내용 을 어떻게 설명 하 는 지 는 서버 에서 결정 합 니 다.예 를 들 어 실행 파일 의 이름 일 수도 있 고 데이터베이스 에 기 록 된 이름 일 수도 있 으 며 다른 것 일 수도 있 습 니 다.프로 세 스 가 인 자 를 받 으 면"methodCall"은"params"요소 와"param"하위 요 소 를 포함 할 수 있 습 니 다.모든"param"요 소 는 유형 설명자 가 있 는 값 을 포함 하고 유형 설명 자 는 다음 표 와 같다.태그 설명<i4>또는<int>4 바이트 의 기호 정수,예 를 들 어 12<boolean>0(false)또는 1(true)<string>문자열,예 를 들 어"Hello World"<double>쌍 정밀도 기호 부동 소수점,예 를 들 어-12.214<dateTime.iso 8601>날짜/시간,예 를 들 어 19980717T 14:08:55<base 64>base 64 인 코딩 의 바 이 너 리 데이터,예 를 들 어 eW91IGbid0IHJlQgdGhpcy E 3.1.1 구조 값 은 하나의 구조 이 고 구 조 는요소 로 설명 할 수 있 습 니 다.각각는 여러 개의를 포함 하고,각각는 하나의과 하나의를 포함한다.다음은 두 가지 요소 로 구 성 된 구조:<struct><member><name>name</name><value><string>member 1</string></value></member><member><name>member 2</name><value><i4>19</i4></value></member></struct>는 끼 워 넣 을 수 있 으 며,임의의또는 임의의 다른 유형 을 포함 할 수 있 습 니 다.를 포함 합 니 다.3.1.2 배열 값 은 배열 형식 일 수 있 고 배열 은요소 로 설명 할 수 있 습 니 다.각요 소 는요 소 를 포함 하고요 소 는 여러 개의요 소 를 포함 할 수 있 습 니 다.다음은 배열 요소 의 한 예 이다.<array><data><value><boolean>0</boolean></value><value><i4>9</i4></value><value><string>Hello</string></value></data></array>요 소 는 이름 이 없다.전례 에서 보 듯 이요소 의 값 은 여러 가지 유형 일 수 있 습 니 다.요 소 는 끼 워 넣 을 수 있 습 니 다.모든또는 다른 유형 을 포함 할 수 있 습 니 다.위 에서 소개 한와 같 습 니 다.3.2 XML_RPC 응답 XMLRPC 응답 은 HTTP 응답 이 며 내용 유형 은 text/xml 입 니 다.본문 에 응답 하 는 형식 은 다음 과 같다.<?xml version="1.0"?> <methodResponse><params><param><value><string>ABCDEFG</string></value></param></params></methodResponse>는 하나의구 조 를 포함 하거나 하나의구 조 를 포함 할 수 있 으 며 구체 적 으로 과정 호출 에 의 해 성공 적 으로 결정 되 는 지 여부 입 니 다.구 조 는 XML 요청 과 마찬가지 로요소 의 문법 은 다음 과 같다.<fault><value><struct><member><name>faultCode</name><value><int>4</int></value></member><member><name>faultString</name><value>오류!<//string></value> </member> </struct> </value> </fault>

좋은 웹페이지 즐겨찾기