반응형
작은 따옴표를 큰 따옴표로 구분하는 방법
다음으로 다음 설명에 적합한 명령줄의 예를 제시하겠습니다.
curl http://dumbdomain.com/solr/collection2/update/json -H 'Content-type:application/json' -d ' { "add": { "doc": { "uid": "79729", "text" : "I''ve got your number"} } }'
이미 \' (탈옥되지 않음), url encoded (이쪽 끝에서 urldecoded되지 않음) 및 " " (quote sereve!)를 시도했지만 성공하지 못했습니다.
를 unicode 부호화 「」(\u0027)로 치환하면, 다음과 같이 동작합니다.
curl http://dumbdomain.com/solr/collection2/update/json -H 'Content-type:application/json' -d ' { "add": { "doc": { "uid": "79729", "text" : "I\u0027ve got your number"} } }'
이상하지만, 알아둘 가치가 있어요!
이러한 경우의 일반적인 회피책은 데이터를 파일에 저장하고 투고하는 것입니다.
$ cat post.json
{ "add": { "doc": { "uid": "79729", "text" : "I've got your number"} } }
그런 다음 호출:
curl -H "Content-type:application/json" --data @post.json http://dumbdomain.com/solr/collection2/update/json
이렇게 하면 json에서 인용문을 피할 필요가 없어집니다.
Windows 를 사용하고 있는 경우(이 문제는 일반적으로 *nix 에서는 발생하지 않습니다), 출력을 에코에서 컬로 파이프로 연결하여 완전히 이스케이프를 방지할 수 있습니다.
echo {"foo": "bar", "xyzzy": "fubar"} | curl -X POST -H "Content-Type: application/json" -d @- localhost:4444/api/foo
명령줄을 통해 JSON을 올바르게 통과시키는 방법을 의미합니까?Windows 를 사용하고 있는 경우는, 스트링을 회피하는 방법에 주의할 필요가 있습니다.데이터 문자열 전체에 큰따옴표를 사용한 다음 JSON의 큰따옴표를 이스케이프하면 작동합니다.예를 들어 다음과 같습니다.
curl http://dumbdomain.com/solr/collection2/update/json -H 'Content-type:application/json' -d "{ \"add\": { \"doc\": { \"uid\": \"79729\", \"text\" : \"I've got your number\"} } }"
언급URL : https://stackoverflow.com/questions/18612248/how-to-escape-single-quotes-into-double-quotes-into-single-quotes
반응형
'programing' 카테고리의 다른 글
PHP 스크립트/WP REST API에 대한 동시 AJAX 요청이 왜 이렇게 느리죠? (0) | 2023.04.03 |
---|---|
배열에 값이 있는지 확인합니다(각도).JS) (0) | 2023.04.03 |
리액트의 cdn/script 태그에서 javascript 패키지를 Import하려면 어떻게 해야 하나요? (0) | 2023.04.03 |
텍스트 주소를 사용한 Google 지도와 스트리트 뷰 지도 (0) | 2023.04.03 |
'관찰 가능' 유형에 'catch' 속성이 없습니다. (0) | 2023.04.03 |