카테고리 없음
curl로 POST 요청 보내기
idea9329
2025. 1. 20. 12:28
반응형
curl은 HTTP 요청을 보내기 위한 강력한 명령줄 도구입니다. 아래는 curl을 사용하여 POST 요청을 보내는 다양한 방법과 예제입니다.
1. 간단한 POST 요청
curl -X POST https://example.com/api
- -X POST는 POST 요청을 지정합니다.
- 이 명령어는 요청 본문 없이 기본적인 POST 요청을 보냅니다.
2. POST 요청에 데이터 추가
(1) URL-Encoded Form 데이터
curl -X POST -d "key1=value1&key2=value2" https://example.com/api
- -d 옵션으로 데이터를 전달합니다.
- 데이터는 application/x-www-form-urlencoded 형식으로 전송됩니다.
(2) JSON 데이터
curl -X POST -H "Content-Type: application/json" -d '{"key1":"value1","key2":"value2"}' https://example.com/api
- -H로 HTTP 헤더를 설정하여 Content-Type: application/json을 지정합니다.
- -d 옵션으로 JSON 데이터를 전달합니다.
3. POST 요청에 파일 전송
(1) 파일 업로드
curl -X POST -F "file=@/path/to/file" https://example.com/upload
- -F 옵션을 사용해 파일을 전송합니다.
- @ 뒤에 파일 경로를 적습니다.
(2) 파일과 데이터 함께 전송
curl -X POST -F "file=@/path/to/file" -F "key1=value1" https://example.com/upload
- 여러 개의 -F 옵션으로 파일과 데이터를 함께 전송할 수 있습니다.
4. 인증이 필요한 POST 요청
(1) 기본 인증 (Basic Auth)
curl -X POST -u username:password -d "key=value" https://example.com/api
- -u username:password 옵션으로 기본 인증을 추가합니다.
(2) Bearer 토큰 인증
curl -X POST -H "Authorization: Bearer YOUR_TOKEN" -d '{"key":"value"}' https://example.com/api
- -H 옵션으로 Authorization 헤더에 토큰을 추가합니다.
5. POST 요청의 전체 응답 보기
(1) 응답 헤더와 본문 확인
curl -X POST -d "key=value" -i https://example.com/api
- -i 옵션으로 응답 헤더와 본문을 함께 출력합니다.
(2) 응답 본문만 확인
curl -X POST -d "key=value" -s https://example.com/api
- -s 옵션은 진행 상황 메시지를 숨기고 응답 본문만 출력합니다.
6. POST 요청 결과를 파일로 저장
curl -X POST -d "key=value" -o response.json https://example.com/api
- -o 옵션으로 응답 결과를 파일로 저장합니다.
예제 정리
JSON 데이터 전송
curl -X POST -H "Content-Type: application/json" -d '{"username":"test","password":"1234"}' https://example.com/login
파일 업로드
curl -X POST -F "file=@/path/to/image.jpg" https://example.com/upload
Bearer 토큰 인증 사용
curl -X POST -H "Authorization: Bearer YOUR_TOKEN" -d '{"data":"value"}' https://example.com/protected
궁금한 점이 있거나 추가적인 예제가 필요하면 말씀해주세요! 😊
반응형