bash - 无法在 curl 命令中使用变量
问题描述
我试图在我的 ksh 程序的 curl 命令中使用两个变量,但它不起作用。
例子:
原始网址
curl -s --header "Content-Type:application/json" --header "Accept:application/json" -X POST --data-binary '{"username":"foo","password":"foo_pwd"}' URL site
在我的节目中
user=foo pwd=foo_pwd curl -s --header "Content-Type:application/json" --header "Accept:application/json" -X POST --data-binary '{"username":"'"$user"'","password":"'"$pwd"'"}' URL site
我也试过用反斜杠转义双引号,但它也不起作用。
解决方案
首先检查你的脚本
user=foo
pwd=foo_pwd
echo '{"username":"'"$user"'","password":"'"$pwd"'"}'
然后运行
user=foo
pwd=foo_pwd
curl -s --header "Content-Type:application/json" --header "Accept:application/json" -X POST https://example.com --data-binary '{"username":"'"$user"'","password":"'"$pwd"'"}'
推荐阅读
- r - R:基于超过 1 个变量对记录进行分类
- python - 在 Python 中打印某些 JSON 数据
- android - 如何查看应用内购买的促销代码是否已兑换?
- javascript - POST https://accounts.spotify.com/api/token 415 Unsupported Media when using fetch
- angular - 测试失败“预期的间谍 doDeleteRule 已被调用。”,茉莉,业力
- android - Cordova Javascript QR 扫描仪插件无法在 Android 上运行 (cordova-plugin-qrscanner)
- amazon-web-services - 通过 java 创建 AWS Amazon Polly mp3 文件
- azure - 为什么在从 Azure 容器注册表中提取图像之前需要登录到它,即 az login 不够好?
- javascript - 如何解开图表?
- java - 如果条件为真,有什么方法可以中断并重新启动 for 循环?