当我发布一个原始字符串作为JSON REST服务调用的输入时,它正在执行ex:
curl -d "{\"input1\": \"as\", \"input2\": \"ad\"}" -i -X POST -H "Content-Type:application/json" http://localhost/rtygies/Service1.svc/rest/receivedata1
但是当我作为xml作为输入发布时,它会给出错误,如下所示:
curl -d "{\"input1\": \"<xml></xml>\", \"input2\": \"<xml></xml>\"}" -i -X POST -H "Content-Type:application/json" http://localhost/rtygies/Service1.svc/rest/receivedata1
错误:&lt;此时出人意料
我在windows中使用curl。
任何人都可以说如何将xml作为字符串输入发布到来自curl的JSON格式的Rest服务
答案 0 :(得分:6)
实际上,我不知道是什么情况,
但我得到一个错误< is unexpected this time
当我尝试以下命令(在Windows上)时:
curl -u admin:password -XPOST -H 'Content-type: text/xml' -d '<namespace><prefix>newWorkspace</prefix><uri>http://geoserver.org</uri></namespace>' http://localhost:8080/geoserver/rest/namespaces
然后我将单引号改为双引号并且有效。
答案 1 :(得分:0)
重定向符号可以通过&#34;
进行转义尝试使用
curl -d "{\"input1\": \""<xml></xml>"\", \"input2\": \""<xml></xml>"\"}" -i -X POST -H "Content-Type:application/json" http://localhost/rtygies/Service1.svc/rest/receivedata1
答案 2 :(得分:0)
我没有双引号的运气,但是用^转义<和>对我有用。
所以你的卷发变得..
curl -d "{\"input1\": \"^<xml^>^</xml^>\", \"input2\": \"^<xml^>^</xml^>\"}" -i -X POST -H "Content-Type:application/json" http://localhost/rtygies/Service1.svc/rest/receivedata1