Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
邮寄至Slack API Elixir_Elixir_Slack Api - Fatal编程技术网

邮寄至Slack API Elixir

邮寄至Slack API Elixir,elixir,slack-api,Elixir,Slack Api,我正在尝试使用HTTPotion发布到slackapi。我遇到了一个关于它的问题,它为我指明了正确的方向,但我不断地犯错误: HTTPotion.Response{body: "invalid_payload", ... 我的代码是 HTTPotion.post "https://hooks.slack.com/services/T00000000/B0000000/xxxxxxxxxxxxx", [body: "{'channel': '#elixir', 'username': 'elix

我正在尝试使用HTTPotion发布到slackapi。我遇到了一个关于它的问题,它为我指明了正确的方向,但我不断地犯错误:

HTTPotion.Response{body: "invalid_payload",
...
我的代码是

HTTPotion.post "https://hooks.slack.com/services/T00000000/B0000000/xxxxxxxxxxxxx", [body: "{'channel': '#elixir', 'username': 'elixir stuff', 'text': '#{text}'", headers: ["Content-Type": "application/json"]]
我不确定我的有效载荷到底出了什么问题


任何帮助都会很好

这是因为您的
正文
不是有效的JSON,因为它使用单引号而不是双引号,并且不能正确地转义
文本
的值。为此,您应该使用适当的JSON编码器。将
毒药添加为依赖项后,您可以执行以下操作:

body: Poison.encode!(%{channel: "#elixir", username: "elixir stuff", text: text}), ...

这是因为您的
body
不是有效的JSON,因为它使用单引号而不是双引号,并且不能正确地转义
text
的值。为此,您应该使用适当的JSON编码器。将
毒药添加为依赖项后,您可以执行以下操作:

body: Poison.encode!(%{channel: "#elixir", username: "elixir stuff", text: text}), ...