Slack API - 为某些帖子生成:invalid_arg_name

Slack API - Generates: invalid_arg_name for SOME posts

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

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

项目 5 returns error: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 Split Top: 顺序:1比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 编码 .