我有这样的网址:
http://localhost:8999/createAudio?method=createAudio&sessionId=1234&text=${line}&voice=Paul&encoder=MP3";
其中${line}
是“这是一个美好的一天。”
我使用wget
来捕获上述http请求的输出,如下所示:
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
如何确保在http请求中使用整个${line}
?
答案 0 :(得分:7)
一个答案是简单地将您的空格URL编码为%20
,删除任何文字空格。
但是,wget
会为您执行此操作。这里的问题是,在初始化cURL
变量时,您已正确引用,但在curl命令行中实际使用时却没有。你还需要在那里引用,否则bash会将该变量中的任何空格解释为参数分隔符:
wget -O test.html "$cURL"