curl을 사용하여 RESTful PUT (또는 DELETE) 방법을 어떻게 테스트합니까?
답변
-X
원하는 HTTP 동사와 함께 플래그 사용 :
curl -X PUT -d arg=val -d arg2=val2 localhost:8080
이 예제는 또한 -d
플래그를 사용 하여 PUT 요청에 인수를 제공합니다.
답변
빠른 답변 :
한 줄에서 curl 명령은 다음과 같습니다.
a) 양식 데이터를 보내는 경우 :
curl -X PUT -H "Content-Type: multipart/form-data;" -F "key1=val1" "YOUR_URI"
b) 원시 데이터를 json으로 보내는 경우 :
curl -X PUT -H "Content-Type: application/json" -d '{"key1":"value"}' "YOUR_URI"
c) POST 요청으로 파일을 보내는 경우 :
curl -X POST "YOUR_URI" -F 'file=@/file-path.csv'
대체 솔루션 :
Chrome 스토어에서 POSTMAN 앱을 사용하여 동등한 cURL 요청을받을 수 있습니다. 보다 복잡한 요청을 작성할 때 특히 유용합니다.
다른 형식으로 요청하거나 java, PHP와 같은 다른 클라이언트에 대한 요청은 아래 POSTMAN / 코멘트를 확인하십시오.
답변
Martin C. Martin의 의견에 따른 PUT의 예 :
curl -T filename.txt http://www.example.com/dir/
와 -T
(동일 --upload-file
) 컬은 HTTP에 대한 PUT을 사용합니다.
답변
curl -X PUT -d 'new_value' URL_PATH/key
어디,
X-요청 명령에 사용되는 옵션
d-원격 URL에 데이터를 넣는 데 사용되는 옵션
URL_PATH-원격 URL
new_value-서버 키에 넣을 값
답변
이 스레드에 늦었지만 비슷한 요구 사항이 있습니다. 내 스크립트가 curl 요청을 동적으로 구성했기 때문에 GET, POST 및 PUT에서 비슷한 명령 구조를 원했습니다.
여기 나를 위해 일하는 것은
들어 PUT의 요청 :
curl --request PUT --url http://localhost:8080/put --header 'content-type: application/x-www-form-urlencoded' --data 'bar=baz&foo=foo1'
대한 POST의 요청 :
curl --request POST --url http://localhost:8080/post --header 'content-type: application/x-www-form-urlencoded' --data 'bar=baz&foo=foo1'
대한 GET의 요청 :
curl --request GET --url 'http://localhost:8080/get?foo=bar&foz=baz'