我对bash和curl有一个非常具体的问题。
我们要做的是:
最近,我们在我们的deploy-scripts中添加了shellcheck,因此我们需要将变量放在引号中。
这是我们要发送的请求(经过shellcheck批准的::
result=$(curl -s -XPOST "${dbURL}" --header "Authorization: Basic $(echo -n "${dbUser}:${dbPwd}" | base64)" --data-binary "blabla")
这是我们得到的错误消息:
{“错误”:“授权失败”}
当我取消引用密码变量(“ $ {dbUser}”:$ {dbPwd}时,它确实起作用。但是后来拼写检查抱怨说,我需要将所有变量都放在引号中。它也可以在另一台使用不同密码的计算机上工作(我无法访问其中任何一个)。
当我使用--user username:password
时也是一样。看来问题出在密码内。
使用google并使用不同的特殊字符测试过程(无卷曲)也无法解决。
有人经历过类似的事情吗?
您可以仅在另一个文件中设置密码,然后将该文件的内容用作您的密码变量。