Programing

Curl을 통해 파일에 지정된 데이터로 POST 요청 보내기

lottogame 2020. 5. 12. 07:57
반응형

Curl을 통해 파일에 지정된 데이터로 POST 요청 보내기


커맨드 라인에서 Curl을 통해 POST 요청을해야합니다. 이 요청에 대한 데이터는 파일에 있습니다. PUT을 통해이 --upload-file옵션 으로 수행 할 수 있음을 알고 있습니다.

curl host:port/post-file -H "Content-Type: text/xml" --data "contents_of_file"

당신은 --data-binary논쟁을 찾고 있습니다 :

curl -i -X POST host:port/post-file \
  -H "Content-Type: text/xml" \
  --data-binary "@path/to/file"

위의 예 -i에서 모든 헤더를 인쇄하여 진행 상황을 확인 -X POST하고 이것이 게시물임을 명시 적으로 만듭니다. 와이어의 동작을 변경하지 않고 두 가지를 모두 안전하게 생략 할 수 있습니다. 파일 경로는 @기호 앞에 와야 하므로 curl파일에서 읽어야합니다.


커맨드 라인에서 Curl을 통해 POST 요청을해야합니다. 이 요청에 대한 데이터는 파일에 있습니다.

당신이 할 필요가있을 것이다 --dataA를 인수 시작 @:

curl -H "Content-Type: text/xml" --data "@path_of_file" host:port/post-file-path

예를 들어, 파일에 데이터 stuff.xml가 있으면 다음과 같은 작업을 수행합니다.

curl -H "Content-Type: text/xml" --data "@stuff.xml" host:port/post-file-path

stuff.xml파일 이름이 파일에 대한 상대 또는 전체 경로로 대체 될 수있다 @../xml/stuff.xml, @/var/tmp/stuff.xml...


매개 변수 이름을 지정해야하는 양식 데이터를 사용하여 파일을 업로드하는 경우 다음을 사용할 수 있습니다.

curl -X POST -i -F parametername=@filename host:port/xxx


대부분의 답변은 여기에서 완벽하지만 내 특정 문제로 여기에 도착했을 때 POST 메서드를 사용하여 이진 파일 (XLSX 스프레드 시트)을 업로드해야합니다. 한 가지 누락 된 것이 있습니다 . 즉 일반적으로로드하는 파일이 아니라 더 폼 데이터 요소 , 주석 등의 파일이나 태그는 파일로 내 사건이었다으로 등. 따라서 여기를 사용 사례로 여기에 추가하여 다른 사람들을 도울 수 있습니다.

curl -POST -F comment=mycomment -F file_type=XLSX -F file_data=@/your/path/to/file.XLSX http://yourhost.example.com/api/example_url

참고 URL : https://stackoverflow.com/questions/6408904/send-post-request-with-data-specified-in-file-via-curl

반응형