【问题标题】:Slack API - Generates: invalid_arg_name for SOME postsSlack API - 为某些帖子生成:invalid_arg_name
【发布时间】:2020-11-16 02:06:00
【问题描述】:

我有生成以下字符串的代码,这些字符串向 slack 发送消息。 我已经 XXXd 我的令牌和频道名称。除此之外 - 这些都是准确的,因为它们被发送到 slack。

代码执行了其中大约 50 个 - 其中只有一些失败

第 5 项返回错误:invalid_arg_name

  1. https://slack.com/api/chat.postMessage?token=xxx&pretty=0&username=CNS&channel=mychannel&text=List 更新时间:2020 年 7 月 26 日下午 12:28

  2. https://slack.com/api/chat.postMessage?token=xxx&pretty=0&username=CNS&channel=mychannel&text= (汽水和饮料):|1000|健怡可乐 - 2 升:订购:7 至 8 - 2 升"

  3. https://slack.com/api/chat.postMessage?token=xxx&pretty=0&username=CNS&channel=mychannel&text= (汽水和饮料):|0999|健怡可乐 - 百事可乐 - 罐头:订购:3 到 4 箱

  4. https://slack.com/api/chat.postMessage?token=xxx&pretty=0&username=CNS&channel=mychannel&text= (调味料): |0997|香料 - 意大利:订购:1 到 1 份

  5. https://slack.com/api/chat.postMessage?token=xxx&pretty=0&username=CNS&channel=mychannel&text= (面包和谷物):|0974|面包 - 白色 Meijer 开叉顶部: 订购:每人 1 比 1

【问题讨论】:

  • 除了error:invalid_arg_name之外,API 是否提供有关错误的其他详细信息?
  • 整个 URL 响应为:"{""ok"":false,""error"":""invalid_arg_name""}"

标签: slack-api


【解决方案1】:

您应该在将文本发送到 API 之前对其进行编码。在示例 5 中,您发送了一个未编码的 & 符号(“Breads & Cereal”),导致 API 将 & 符号后面的所有内容解释为查询参数名称(因此出现错误,“invalid_arg_name”)。

尝试这样发送:

https://slack.com/api/chat.postMessage?token=xxx&pretty=0&username=CNS&channel=mychannel&text=%20%28Breads%20%26%20Cereal%20%29%3A%20%7C0974%7C%20Bread%20-%20White%20Meijer%20Split%20Top%3A%20Order%3A%201%20to%201%20each.

我建议你搜索如何在你正在使用的编程语言中进行百分比编码url编码

【讨论】:

  • 谢谢 - 这确实是问题!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多