3

私は次のような URL を持ってい
http://localhost:8999/createAudio?method=createAudio&sessionId=1234&text=${line}&voice=Paul&encoder=MP3";
ます${line}。上記の http リクエストの出力を次のようにキャプチャするため
に使用しています。wget
cURL="http://localhost:8999/createAudio?method=createAudio&sessionId=1234&text=${line}&voice=Sangeeta&encoder=MP3";
wget -O test.html ${cURL}

私の問題は、http 要求が空白の最初のインスタンスでカットされることです。したがって、発行される http リクエストは次のようになります。
http://localhost:8999/createAudio?method=createAudio&sessionId=1234&text=This

${line}全体が http 要求で使用されるようにするにはどうすればよいですか?

4

1 に答える 1

8

1 つの答えは、単にスペースを として URL エンコードし%20、リテラル スペースを取り除くことです。

ただし、wgetこれはあなたのために行います。ここでの問題は、変数を初期化するときに正しく引用されているが、curl コマンド ラインでcURL実際に使用しているときには引用されていないことです。そこも引用する必要があります。そうしないと、bash はその変数内のスペースを引数区切り文字として解釈します。

wget -O test.html "$cURL"
于 2013-02-24T20:09:41.863 に答える