curl이용해서 데이터전송 (ID:PW)
curl -X 'POST' \
'http://10.10.8.47/api/v2/sessions' \
-H 'accept: application/hal+json' \
-H 'Content-Type: application/hal+json' \
-d '{
"username": "testID",
"password": "testPW"
}'
session을 생성하기 위해 POST를 사용하고, 데이터를 ID/PW를 입력한다.
옵션 정리
-d, --data HTTP POST 데이터
-f, --fail HTTP 오류 시 자동으로 실패(출력 없음)
-h, --help 명령에 대한 도움말 보기
-i, --include 출력에 프로토콜 응답 헤더 포함
-o, --output stdout 대신 파일에 쓰기
-O, --remote-name 원격 파일로 명명된 파일에 출력 쓰기
-s, --silent 사일런트 모드
-T, --upload-file 대상으로 로컬 FILE 전송
-u, --user 서버 사용자 및 비밀번호
-A, --user-agent 서버로 User-Agent 보내기
-V, --version 버전 번호 표시 후 종료
session 생성 후 키 사용하여 정보 확인
curl -X 'GET' \
'http://10.10.8.47/api/v2/sessions/current' \
-H 'accept: application/hal+json' \
-H 'Authorization: Basic dGVzdElEOkR3OWJGM21pNGFTZUhTZVFseHdKQWJ1NjYyM2lqVWphcU94bnYraWw='
조회한 해당 세션에 관한 정보를 가지고 올 수 있다. 물론 세션 값을 넣어준 후 인증에 성공해야 원하는 정보가 보인다.
curl -X 'PATCH' \
'http://10.10.8.47/api/v2/sessions/current' \
-H 'accept: application/hal+json' \
-H 'Authorization: Basic dGVzdElEOkR3OWJGM21pNGFTZUhTZVFseHdKQWJ1NjYyM2lqVWphcU94bnYraWw=' \
-H 'Content-Type: application/merge-patch+json' \
-d '{
"state": "LOGGED_OUT"
}'
원하는 작업이 마무리 되었다면, 세션을 종료하여 마무리 하면됩니다.
* REST 메서드
POST : POST를 통해 해당 URI를 요청하면 리소스를 생성합니다.
GET : GET를 통해 해당 리소스를 조회합니다. 리소스를 조회하고 해당 도큐먼트에 대한 자세한 정보를 가져온다
PUT : PUT를 통해 해당 리소스를 수정합니다.
DELETE : DELETE를 통해 리소스를 삭제합니다.