首页 > 解决方案 > 如何在 Github Actions 中添加传递 env 变量作为 json 的一部分?

问题描述

作为 Github 工作流程的一部分,我有以下步骤:

run: |
    MESSAGE="${{ env.MESSAGE }}" && echo $MESSAGE \ &&
    curl -X POST -H 'Content-type: application/json' --data '{"text":$MESSAGE}' https://hooks.slack.com/services/<some_ids>

回声工作并输出正确的消息,但替换 json 中的消息失败。什么是正确的语法?

我已经尝试转义引号(它不是有效的语法):

--data '{"text":\"$MESSAGE\"}' 

标签: jsongithub-actions

解决方案


您将变量放在简单的引号之间:--data '{"text":$MESSAGE}'这可以防止$MESSAGE.

你必须放在$MESSAGE双引号之间:--data "{\"text\": $MESSAGE}"


推荐阅读