如何使用特殊字符@和<卷曲数据

时间:2017-09-12 07:37:20

标签: json curl http-post

我使用slack app通过使用传入webhook将消息发送到松弛通道。我创建了一个bat文件并使用curl发布消息。 问题是,如果我想提及某人,我需要在帖子数据中<@username>

帖子请求看起来像这样

Content-Type: application/json

POST https://hooks.slack.com/services/token?{"text":"<@username>This is a test message"}

卷曲,我有

curl -H "Content-Type: application/json" -X POST "https://hooks.slack.com/services/token" -d "{\"text\":\"<@username>This is a test message\"}"

我收到的错误消息是

  

0&lt; @username 1&gt;这个   系统找不到指定的文件

我意识到@username符号会使curl加载来自给定文件的数据&#34;用户名&#34;

我尝试了一些我能找到的建议,例如:编码后期数据 curl -H "Content-Type: application/json" -X POST "https://hooks.slack.com/services/token" -d "{\"text\":\"%3C%40username%3EThis is a test message\"}"

我收到了消息

  

C0username这是一条测试消息

有人可以帮我这个吗?否则我可能会放弃卷曲并尝试别的东西。

感谢。

1 个答案:

答案 0 :(得分:1)

https://curl.haxx.se/docs/manpage.html

  

--data-raw :( HTTP)这类似于-d, - data发布数据但没有@字符的特殊解释。