我在创建简单bash脚本时遇到了问题,所以,我的目标是完善JWT令牌,并在下一个查询中使用tokn,对于第一个curl从login.json
文件中获取凭证,然后在result.json
中设置它,然后reed token
键并将其设置在变量tokenValue
中,然后我想在标题中设置它在bext curl上,但是当我调试时我没有得到Authorization
标题,为什么?当我手动替换变量(如"Authorization: Bearer test_token"
)时-它起作用了,我面对的是HTTP_AUTHORIZATION=Bearer test_token
curl --request POST -sL \
--url 'http://auth.loc/api/login'\
--output './result.json' \
--header "Content-Type: application/json" \
-d "@login.json" \
tokenValue=$(jq -r '.token' './result.json')
bearerToken="Authorization: Bearer "$tokenValue
echo 'fff' + $bearerToken
curl --request GET -sL \
--url 'http://qbee.local/api/v2/grouptree?_format=json'\
--output './grouptree_result.json' \
--header $bearerToken \
echo "$(cat grouptree_result.json)"
echo 'fff' + $bearerToken
运行良好,我在cli中遇到了正确的数据
发布于 2021-05-19 15:52:32
我发现了如何解决这个问题。问题是使用双引号和单引号
curl --request POST -sL \
--url 'http://qbee.local/api/v2/login'\
--output './result.json' \
--header "Content-Type: application/json" \
-d "@login.json" \
tokenValue=$(jq -r '.token' './result.json')
echo 'token was' + $tokenValue
curl --request GET -sL \
--url 'http://qbee.local/api/v2/metric/1587260952123_10?type=group'\
--output './metric_result.csv' \
--header 'Authorization: Bearer '"$tokenValue" \
--header 'Content-Type: csv' \
echo "$(cat grouptree_result.json)"
https://stackoverflow.com/questions/67582990
复制相似问题