Sinatra를 이용해서 웹 애플리케이션을 개발하던 중, 클라이언트의 요청을 다른 웹서버로 보내야 하는 API를 만들게 됐다. 그냥 GET 호출만 할게 아니고, JSON 형태의 값을 POST로 넘기고, 거기에 HTTP header까지 제어해야 했다. 해서 꽤 많은 일을 할 수 있는 HTTP client api를 찾아야 했다.
그렇게 찾은게 NET::HTTP다. 몇개 더 있는 것 같기는한데, 대략 내가 원하는 일들은 다 할 수 있을 것 같아서 그냥 선택하기로 했다.
URI
HTTP 요청은 꽤 많은 구성요소를 가진다. "프로토콜://Domain:port/PATH?uriquery#fragment"의 구성요소를 가지는데, 이것을 다루는 것도 꽤나 귀찮은 일이다. ruby에서 제공하는 uri 모듈을 사용하기로 하자.
Contents
NET::HTTP
URI
테스트를 위한 PHP 코드
GET 요청 작성
POST 요청 작성
HTTPS 연결
응답 정보 가져오기
Recent Posts
Archive Posts
Tags