반응형
절대 경로 또는 상대 경로와 함께 컬 요청으로 json 파일 전송
현재 디렉토리의 파일이 아닌 파일을 경로와 함께 지정하는 -d 옵션을 사용하여 curl 명령어를 보내는 방법을 알고 싶습니다.
로컬 디르에서 json 파일을 사용하여 앱을 테스트하려고 하면 다음과 같은 메시지가 나타납니다.앱도 저도 행복합니다.
curl -XPOST -H 'Content-Type:application/json' -d @all_fields.json http://testcomp.lab.net:8080/stats -v -s
* About to connect() to testcomp.lab.net port 8080
* Trying 10.93.2.197... connected
* Connected to testcomp.lab.net (10.93.2.197) port 8080
> POST /stats HTTP/1.1
> User-Agent: curl/7.15.5 (x86_64-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5
> Host: testcomp.lab.net:8080
> Accept: */*
> Content-Type:application/json
> Content-Length: 2882
> Expect: 100-continue
>
< HTTP/1.1 100 Continue
HTTP/1.1 200 OK
< Content-Length: 0
* Connection #0 to host testcomp.lab.net left intact
* Closing connection #0
다른 디렉터리에 있는 json 파일을 지정하면 다음과 같이 표시됩니다.
curl -XPOST -H 'Content-Type:application/json' -d @json/all_fields.json http://testcomp.lab.net:8080/stats -v -s
"Invalid json for Java type interface java.util.List"
Warning: Couldn't read data from file "json/all_fields.json", this makes an
Warning: empty POST.
<snip snip>
<snip snip>
< HTTP/1.1 400 Bad Request
< Content-Type: application/json
< Transfer-Encoding: chunked
* Connection #0 to host testcomp.lab.net left intact
* Closing connection #0
man 페이지에는 데이터로 전달된 파일의 디렉토리를 지정하기 위한 curl이 없습니다.유감스럽게도 로컬 디렉토리의 파일로 제한되어 있습니까?아니면 다른 디렉토리의 파일을 지정할 수 있는 특별한 방법이 있습니까?잘 부탁드립니다.
그-d @
명령 옵션은 경로가 실제로 존재하는 한 해결 가능한 파일 경로를 허용합니다.다음과 같은 이점이 있습니다.
- 현재 디렉터리에 상대적인 경로
- 완전히 검증된 길
- 연약성이 있는 길.
- 등등
정확히는 수백 개의 *Nix 스타일 명령어와 동일합니다.단 한 가지 간단한 메모는-d
url encoding을 시도합니다.이것에 의해, 설명되고 있는 것은, 실제로는 원하는 데이터가 아닙니다.를 사용해야 합니다.--data-binary
옵션을 선택합니다.다음과 같은 경우:
curl -XPOST
-H 'Content-Type:application/json'
-H 'Accept: application/json'
--data-binary @/full/path/to/test.json
http://localhost:8080/easy/eservices/echo -v -s
언급URL : https://stackoverflow.com/questions/16615900/sending-json-files-in-curl-requests-with-absolute-or-relative-paths
반응형
'programing' 카테고리의 다른 글
Oracle에서 여러 행 연결 및 그룹화 (0) | 2023.03.29 |
---|---|
mongod, mac os x - 제한 경고 (0) | 2023.03.29 |
webpack-dev-server 'webpack' 모듈을 찾을 수 없습니다. (0) | 2023.03.19 |
ajax jquery 단순 가져오기 요청 (0) | 2023.03.19 |
React Native에서 ScrollView의 현재 스크롤 위치를 가져옵니다. (0) | 2023.03.19 |