24. 컬

이 방법은 curl 명령에서 http 요청을 생성하는 것입니다. curl에 대해 더 알고 싶다면 Curl 문서 를 클릭하세요 .

24.1 (a) 명령을 입력하는 방법

cURL 명령에서 테스트 계획 생성

  1. cURL에서 가져오기를 생성하려면 도구 메뉴를 열고 cURL 에서 가져오기를 클릭합니다 .
    그림 1 - curl이 있는 메뉴
    그림 1 - curl이 있는 메뉴
  2. curl 명령줄을 입력하는 방법에는 두 가지가 있습니다. 첫째, 수동으로 입력할 수 있습니다. 두 번째로 curl 명령줄이 포함된 파일을 가져올 수 있습니다. 이 도구는 동시에 여러 curl 명령줄 입력을 지원합니다.
    그림 2.1 - 텍스트 패널에 curl 명령 입력
    그림 2.1 - 텍스트 패널에 curl 명령 입력
    그림 2.2 - 파일에서 curl 명령 입력
    그림 2.2 - 파일에서 curl 명령 입력
  3. 그런 다음 테스트 계획 생성 버튼을 클릭하면 새 HTTP 샘플이 테스트 계획에 추가됩니다.
    그림 3 - 테스트 계획 결과
    그림 3 - 테스트 계획 결과

24.2 지원되는 컬 옵션

-H , --header <헤더>
웹 페이지를 가져올 때 사용할 추가 헤더입니다.
-X , --request <명령>
HTTP 서버와 통신할 때 사용할 사용자 지정 요청 방법을 지정합니다.
--압축
curl이 지원하는 알고리즘 중 하나를 사용하여 압축된 응답을 요청하고 압축되지 않은 문서를 반환합니다.
-A , --user-agent <에이전트 문자열>
HTTP 서버에 보낼 사용자 에이전트 문자열을 지정합니다.
-b , --cookie <이름=데이터>
데이터를 쿠키로 HTTP 서버에 전달합니다.
-d 와 친구들

POST 요청을 통해 데이터 보내기

POST 요청에서 지정된 데이터를 HTTP 서버로 보냅니다. 이 옵션이 동일한 명령줄에서 두 번 이상 사용되면 지정된 데이터 조각이 ' & ' 구분 문자 와 함께 병합됩니다 . 따라서 ' -d name=daniel -d skill=lousy '를 사용하면 ' name=daniel&skill=lousy ' 처럼 보이는 POST 청크가 생성됩니다 .

-d , --data <데이터> , --data-ascii <데이터>
@ 를 사용 하여 파일 업로드
--data-raw <데이터> gt;
--data-raw <데이터>
이것은 추가 처리 없이 지정된 대로 정확하게 데이터를 게시합니다. @ 문자로 데이터를 시작하면 나머지는 파일 이름이어야 합니다.
--data-raw <데이터> 타>
이것은 URL 인코딩을 수행한다는 점을 제외하고 다른 --data 옵션과 유사하게 데이터를 게시합니다 .
--data-raw <데이터>
이것은 --data 와 유사하지만 @ 문자 에 대한 특별한 해석 없이 데이터를 게시합니다.
-F 와 친구들

이렇게 하면 사용자가 제출 버튼을 눌렀을 때 채워진 양식을 컬이 에뮬레이트할 수 있습니다.

-F , --form <이름=내용>
@ 를 사용 하여 파일 업로드
--form-string <이름=내용>
-u , --user <사용자:비밀번호>
서버 인증에 사용할 사용자와 비밀번호를 지정합니다.
--기본 , --다이제스트
curl에 HTTP 인증을 사용하도록 지시합니다.
--cacert 와 친구들

HTTPS로 파일을 가져올 때 지정된 클라이언트 인증서 파일을 사용하도록 curl에 지시

--cacert <CA 인증서>
--capath <CA 인증서 디렉토리>
--ciphers <암호화 목록>
--인증서 상태
--cert-type <유형>
-G , --get
게시물 데이터를 URL에 넣고 get을 사용하여 게시물을 교체합니다.
--유지하지 않음
TCP 연결에서 연결 유지 메시지 사용을 비활성화합니다.
-e , --참조자 <URL>
참조 페이지 정보를 HTTP 서버로 보냅니다 .
-L , -- 위치
서버가 요청된 페이지가 다른 위치로 이동했다고 보고하는 경우 이 옵션은 curl이 새 위치에서 요청을 다시 실행하도록 합니다.
-i , -- 포함
출력에 HTTP 헤더를 포함합니다.
--connect-timeout <초>
서버에 연결할 수 있는 최대 시간(초)입니다.
--keepalive-time <초>
이 옵션은 연결 유지 프로브를 보내기 전에 연결이 유휴 상태를 유지해야 하는 시간과 개별 연결 유지 프로브 사이의 시간을 설정합니다.
-m , --max-time <초>
전체 작업에 소요되는 최대 시간(초)입니다.
-x , --proxy <[프로토콜://][사용자:비밀번호@]프록시호스트[:포트]>
지정된 HTTP 프록시를 사용합니다. 포트 번호를 지정하지 않으면 포트 1080 으로 간주됩니다 .
-U , --proxy-user <사용자:비밀번호>
프록시 인증에 사용할 사용자 및 비밀번호를 지정합니다.
-k , --안전하지 않음
이 옵션은 curl이 안전하지 않은 SSL 연결 및 전송을 수행하도록 명시적으로 허용합니다.
--날것의
사용하면 콘텐츠 또는 전송 인코딩의 모든 내부 HTTP 디코딩을 비활성화하고 대신 변경되지 않은 원시 상태로 전달합니다.
- 나, -- 머리
HTTP 헤더만 가져옵니다. HTTP 서버 는 문서의 헤더만 가져오는 데 사용하는 HEAD 메서드를 제공합니다.
--인터페이스 <이름>
지정된 인터페이스를 사용하여 작업을 수행합니다. 인터페이스 이름, IP 주소 또는 호스트 이름을 입력할 수 있습니다.
--proxy-ntlm / --proxy-협상
지정된 프록시와 통신할 때 HTTP BASIC/NTLM/Digest 인증을 사용하도록 curl에 지시합니다.
--dns-servers <주소>
DOH를 통해 호스트 이름을 확인합니다.
--resolve <호스트:포트:주소>
특정 호스트 및 포트 쌍에 대한 사용자 지정 주소를 제공합니다.
--limit-rate <속도>
curl에서 사용할 최대 전송 속도를 지정합니다.
--max-redirs <숫자>
따를 수 있는 최대 리디렉션 수를 설정합니다.
--noproxy <프록시 목록 없음>
프록시가 지정된 경우 프록시를 사용하지 않는 쉼표로 구분된 호스트 목록입니다.

24.3 경고

입력한 명령이 무시되거나 경고 내용이 포함된 경우 HTTP 요청의 주석 섹션에 경고를 표시합니다.

그림 1 - 경고
그림 1 - 경고

24.4 예제

쿠키 사용

curl -X POST "https://example.invalid" -b 'username=Tom;password=123456'

데이터 사용

curl -X POST "https://example.invalid" --data 'fname=a&lname=b'

사용 양식

curl -X POST "https://example.invalid" -F 'lname=a' -F 'fname=b' -F 'c=@C:\Test\test.txt'

프록시 사용

컬 'https://example.invalid/' -x 'https://aa:bb@proxy.invalid:8042'

사용 권한

curl "https://example.invalid" -u 'user:passwd' --basic

DNS 사용

curl "https://example.invalid" --dns-servers '0.0.0.0,1.1.1.1'

Go to top