👩🏻‍💻 Programming/Etc

Curl 개념 및 사용법

한국의 메타몽 2022. 2. 10. 02:09

 

Curl 이란?

 

CURL = Client URL

서버와 통신할 수 있는 커맨드 명령이 툴로, 웹개발에 많이 사용되는 무료 오픈소스다.

Curl을 사용함으로써 패킷 / 메세지를 네트워크로 전송이 가능하며, HTTP/S로 GET,POST등으로 데이터를 전송할 수 있다.

 

 

 

Curl 설치 방법

 

  • 우분투 Command 설치
    : apt-get install curl

 

 

curl - Download

 

curl.se

 

 

 

Curl 활용- 예시

 

예를 들어 JUnit으로 테스트를 할때, 아래와 같이 한글이 깨져서 발생하는 경우가 있다.

외계어로 깨져있는 한국어

이때 (macOS기준) terminal, (window기준) cmd로 들어가 아래와 같이 입력해주면 Curl을 활용해 해당 Request의 사이트의 소스를 가져와 깨진 한글도 읽어낼 수 있다.

 

curl http://요청경로

 

개인정보는 가렸다

 

 

Curl 활용- 예시2

 

만약 요청 URL에 '&'이 포함되어 아래와 같은 응답을 받게될 경우,

zsh: parse error near `&'

요청 URL의 양끝에 "를 추가하도록 하자.

참고로 큰따옴표 "가 아닌 "이므로 주의하자.

큰따옴표를 사용하면 똑같은 에러가 반환된다.

 

 

Curl의 주요 옵션

 

  • -O : 파일 다운로드 (ex : curl -O http://해당경로)
  • -i : 헤더값 확인
  • -I : 사이트의 Header와 바디 정보를 함께 가져오기
  • -v : request, response 어떻게 오가는지 확인.(헤더, 바디)
  • -k : https 사이트를 SSL certificate 검증없이 연결.
  • -s : 정숙 모드. 진행 내역이나 메시지등을 출력하지 않음.
  • -H : 헤더 설정. 헤더 정보 전달
  • -d : HTTP Post data (FORM 을 POST 하는 HTTP나 JSON 으로 데이타를 주고받는 REST 기반의 웹서비스 디버깅시 유용한 옵션)

 

참고 자료

 

크레이지 J의 탐구생활 - curl 사용법

 

curl 사용법/HTTP 테스트

<!DOCTYPE html> curl curl 사용법 패킷/메시지를 네트웍으로 전송하는 유용한 유틸리티입니다. HTTP/S로 GET/POST 등으로 데이터를 전송할 수 있습니다. 설치 우분투에서 커맨드로 설치 apt-get install curl 바.

crazyj.tistory.com