我正在尝试使用 curl 发出 HTTP POST 请求。
请求包含一些环境变量。这是命令:
curl -X POST -u username:pass -H "Content-Type: application/json" -d "{ \"fields\": { \"project\": { \"key\": \"myproject\" }, \"summary\": \"${var1.name} - ${var2.name}\", \"description\": \"Testing testing!:\n${url}\", \"issuetype\": { \"name\": \"Task\" }}}" http://myurl.com/rest
信息已发送,但 ${var1.name}
和 ${var2.name}
作为文字字符串发送,而不是作为它们的实际值发送。
该命令在 Windows 上运行,所以这就是我转义引号的原因。为什么要将它们作为字符串发送,这可能是个问题吗?
最佳答案
Windows 环境变量被引用为 %var1%
和 %var2%
。这有效:
C:\>set var1.name=test1
C:\>set var2.name=test2
C:\>set var
var1.name=test1
var2.name=test2
curl.exe -X POST -u username:pass -H "Content-Type: application/json"-d "{\"fields\": {\"project\": {\"key\":\"myproject\"},\"summary\":\"%var1.name% - %var2.name%\",\"description\":\"测试测试!:\n${url}\",\"issuetype\": {\"name\":\"Task\"}}}"http://myurl.com/rest
关于string - Windows curl 字符串格式化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33443980/