我正在尝试将URL编码的多行string作为GET调用的parameter passing给现有的Web服务。 我觉得我正在接近与以下解决scheme:
echo -e 'p_message=a\nb\nc\n' | curl -v -G --data-urlencode @- http://localhost/service > GET /service?p_message%3Da%0Ab%0Ac%0A%0A HTTP/1.1
看来唯一出错的是'='正在获得url编码。 我正在运行最新版本的curl(7.33)。
明白了,以下似乎工作:
echo -e "a\nb\nc\n'" | curl -v -G --data-urlencode p_message@- http://localhost/service > GET /service?p_message=a%0Ab%0Ac%0A%27%0A HTTP/1.1