在curl测试的data参数中引用变量
前言
在使用curl接口进行接口传参时,常会使用如下方法:
#!/bin/bash url="http://192.168.0.10:8000/api/test" curl -X POST ${url} -H 'Content-Type: application/json' -d '{"param1": "1234", "param2": "qwert"}'
简单场景下也还行,但参数很多,而且参数值很长的话,看起来不清晰,也不美观。因为data参数用的单引号,在bash语法中无法引用变量,所以可以稍微改一下,让curl的时候引用事先声明的变量。
示例代码
逻辑很简单,单引号改双引号,双引号里面的双引号转义。
#!/bin/bash url="http://192.168.0.10:8000/api/test" param1="1234" param2="qwer" curl -X POST ${url} -H 'Content-Type: application/json' -d "{\"param1\": \"${param1}\", \"param2\": \"${param2}\"}"