当我尝试使用Slack API删除表示该频道不存在的回复时出现错误。
为了验证它,我打电话给:
@Lock(LockModeType.PESSIMISTIC_WRITE)
public SubmissionGroup findByObjectID(Long id);
然后我收到消息。
我回来的消息是这个:
https://slack.com/api/channels.history?token={token}&channel={channel}&count=1&inclusive=true&latest={ts}&oldest={ts}
如您所见,这里有“此消息已删除”。似乎会自动生成并不断出现,因为我仍然有与之相关的答复。
如果我通过回复ts({
"ok": true,
"latest": "1540555927.024300",
"oldest": "1540555927.024300",
"messages": [
{
"text": "This message was deleted.",
"edited": {
"user": "UD6SLKGEP",
"ts": "1540555928.000000"
},
"type": "message",
"subtype": "tombstone",
"user": "USLACKBOT",
"hidden": true,
"thread_ts": "1540555927.024300",
"reply_count": 1,
"replies": [
{
"user": "UD6SLKGEP",
"ts": "1540555928.024401"
}
],
"subscribed": false,
"unread_count": 1,
"ts": "1540555927.024300"
}
],
"has_more": false,
"is_limited": true
}
)呼叫相同的端点,则对于相同的频道,我会得到以下提示:
1540555928.024401
这意味着那里有一条消息,这是另一条消息的答复。
当我尝试删除此回复消息时,问题开始了。
我将此端点称为:
{
"ok": true,
"latest": "1540555928.024401",
"oldest": "1540555928.024401",
"messages": [
{
"type": "message",
"user": "UD6SLKGEP",
"text": "45d7bc14a6fa03 23456789 abcdefghijklmnop",
"bot_id": "BD6AJUY8G",
"thread_ts": "1540555927.024300",
"ts": "1540555928.024401"
}
],
"has_more": false,
"is_limited": true
}
将频道和回复ts作为有效负载传递:
https://slack.com/api/chat.delete?token={token}
现在,我得到了以下回复,而不是删除消息:
{
"channel": "CD65XB2D7",
"message_ts": "1540555928.024401"
}
但是该频道存在,我也正在使用它删除其他邮件。当我尝试仅从邮件中删除答复时,就会发生这种情况。
删除回复消息有什么特别之处吗?
答案 0 :(得分:0)
我刚刚在这里发现了问题:
https://api.slack.com/changelog/2017-10-keeping-up-with-the-jsons#methods
出于某种原因,它只适用于邮件,但不适用于回复。我必须按照此链接上的建议将令牌移动到带有载体的标头上的“授权”。