투케이2K

45. (LINUX/리눅스) curl 명령어 사용해 http put body json 방식 요청 수행 및 응답 확인 본문

Linux (cmd)

45. (LINUX/리눅스) curl 명령어 사용해 http put body json 방식 요청 수행 및 응답 확인

투케이2K 2024. 7. 17. 19:18
반응형

[개발 환경 설정]

사용 툴 : Putty

OS : LINUX

 

[소스 코드]

 

# -------------------------------------------------------------
# [요약 설명]
# -------------------------------------------------------------

1. curl 명령어는 리눅스에서 프로토콜을 이용해 URL 로 데이터 전송 후 서버 응답 값을 확인할 때 사용하는 명령줄 도구 입니다

# -------------------------------------------------------------
# [소스 코드 예시]
# -------------------------------------------------------------

문법 : $ curl [옵션] [요청 주소] [헤더 값]

예시 : $ curl -d '{"userId":1, "id":1, "title":"foo", "body":"bar"}' -k -X PUT 'https://jsonplaceholder.typicode.com/posts/1' -H 'Content-Type: application/json'

  >> -k : https 프로토콜에서 SSL 인증서에 대한 검증없이 연결
  >> -d : http 요청 시 첨부할 데이터
  >> -X : 요청시 사용할 메소드의 종류 (GET, POST, PUT, PATCH, DELETE)
  >> -H : 전송할 헤더를 지정

# -------------------------------------------------------------
# [결과 출력]
# -------------------------------------------------------------

$ curl -d '{"userId":1, "id":1, "title":"foo", "body":"bar"}' -k -X PUT 'https://jsonplaceholder.typicode.com/posts/1' -H 'Content-Type: application/json'
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   112  100    63  100    49     88     68 --:--:-- --:--:-- --:--:--   157{
  "userId": 1,
  "id": 1,
  "title": "foo",
  "body": "bar"
}

# -------------------------------------------------------------
# [추가 옵션 설명]
# -------------------------------------------------------------

-k : 프로토콜에서 SSL 인증서에 대한 검증없이 연결
-i : HTTP 헤더만 보여주고 컨텐츠는 표시하지 않음
-D : HTTP 헤더를 파일에 기록
-L : HTTP 301, 302 응답을 받은 경우 리디렉션 URL로 이동
-d : HTTP POST 요청 시 Body 데이터 입력
-v : 동작하면서 세세한 내용 출력
-J : 헤더에 있는 파일 이름으로 다운로드 파일 저장
-o : curl 로 받아온 내용을 파일로 저장
-O : 파일 저장시 리모트에 저장되어 있던 이름 가져와 로컬에 저장
-s : 진행 내용이나 메시지들을 출력하지 않음
-X : 요청시 사용할 메소드의 종류 (GET, POST, PUT, PATCH, DELETE)
-i : 응답에 Content 만 출력하지 않고 서버의 Reponse 도 포함 출력
-A : 서버에 User-Agent 값 보내기
-u : 서버에 사용자 및 비밀번호 인증
-T : 로컬 파일을 대상으로 전송
-f : HTTP 오류 시 자동으로 실패 (출력 없음)
-G : 전송할 사이트 url 및 ip 주소
-H : 전송할 헤더를 지정
-J : 헤더에 있는 파일 이름으로 저장
-C : 파일 다운로드 재개

# -------------------------------------------------------------

 

반응형
Comments