2016-07-25 6 views
2

私はUnix環境から安らかなAPIを呼び出すように求められています。私のコマンドにバグがあるので、私は打撃問題を持っていますか?curl:安らかなapiに指定されているURLがありません

私はcurl --helpを見てみましたが、助けになるかもしれないものがparam key-pairを渡す方法になります。そのようなAPI呼び出しをデバッグする方法の例を私に与えることは可能でしょうか?あなたは、単一または二重引用符であなたのparamsを囲む必要があり

$ curl -d param1=xxx&param2=yyy -X POST https://restful_api_path/lifecycle/v1/resource_node 
[1]  10276 
[2]  10277 
-ksh: -X: not found [No such file or directory] 
[2] + Done     curl -d param1=xxx&param2=yyy -X POST https://restful_api_path/lifecycle/v1/resource_node 
$ curl: no URL specified! 
curl: try 'curl --help' or 'curl --manual' for more information 

乾杯

+0

引用符であなたのparamsを囲みます - '' – neevek

+0

はあなたが今までに何行を不思議ませんでした ' 'のparam1 = XXX&PARAM2 = YYY' -dカール[1] 10276'と' [2] 10277'が意味するかもしれない? –

答えて

4

。例えば

curl -d 'param1=xxx&param2=yyy' -X POST https://restful_api_path/lifecycle/v1/resource_node 

BASHで&オペレータがコマンドを使用すると、リテラルアンパサンドをしたい場合は、したがって、それは引用されたか、エスケープする必要があり、バックグラウンドで実行し続ける必要があることを意味するために使用されているためです。

2

私はあなたが引数を引用する二重引用符を追加する必要があると思う:

curl -d "param1=xxx&param2=yyy" -X POST https://restfulurl/lifecycle/v1/resourcenode 

P.S. Windowsでは、一重引用符ではなく二重引用符を使用する必要があります。しかし、Unixでは、引数を引用するために二重引用符と一重引用符の両方をサポートしています。だから、CMD以下 は罰金もある:

curl -d 'param1=xxx&param2=yyy' -X POST https://restfulurl/lifecycle/v1/resourcenode 
関連する問題