【发布时间】:2018-02-19 22:37:31
【问题描述】:
我正在尝试以下代码来获取响应正文和状态:
read -ra result <<< $(curl -i --insecure \
-H "Accept: application/json" \
-H "Content-Type:application/json" \
-X POST --data "$configData" $openingNode"/voice/v1/updateWithPh")
status=${result[1]}
response=${result[@]}
echo $status
这里的问题是 -
我正确地获得了状态代码和响应正文。 但是当我创建一个 bash 函数并将其作为参数发送时,响应正文在函数中更改为 "HTTP/1.1" ,如下所示。
echo $(validateUpdate $configData $response)
函数代码 -
function validateUpdate(){
echo $1
echo $2
}
$2 打印为 "HTTP/1.1"
是什么原因?如何解决这个问题?
【问题讨论】:
-
也许你在
$configData中有一个换行符。您可以尝试引用您的变量吗:echo $(validateUpdate "$configData" "$response") -
贴一个
${result[@]}的例子