首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Bash curl如何在头部设置变量?

Bash curl如何在头部设置变量?
EN

Stack Overflow用户
提问于 2021-05-18 16:55:22
回答 1查看 55关注 0票数 0

我在创建简单bash脚本时遇到了问题,所以,我的目标是完善JWT令牌,并在下一个查询中使用tokn,对于第一个curl从login.json文件中获取凭证,然后在result.json中设置它,然后reed token键并将其设置在变量tokenValue中,然后我想在标题中设置它在bext curl上,但是当我调试时我没有得到Authorization标题,为什么?当我手动替换变量(如"Authorization: Bearer test_token")时-它起作用了,我面对的是HTTP_AUTHORIZATION=Bearer test_token

代码语言:javascript
运行
复制
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中遇到了正确的数据

EN

回答 1

Stack Overflow用户

发布于 2021-05-19 15:52:32

我发现了如何解决这个问题。问题是使用双引号和单引号

代码语言:javascript
运行
复制
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)"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67582990

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档