node.js - Slack users.list api 在传递有效 token 时也会抛出 invalid_auth 错误

标签 node.js slack slack-api

我正在创建一个 Slack 应用程序。所以我需要获取团队详细信息。所以我正在调用 users.list API。但它给我一个 invalid_auth 错误。 我验证了 token ,我的 token 是正确的。当我向 slack 的测试人员发出请求时 tab它返回给我团队的所有用户列表。

您可以在下图中看到我得到了正确的响应,但我的代码抛出了 invalid_auth 错误。

enter image description here

下面是我的代码

 import request from 'request';
 const get = async (uri, token) => new Promise((resolve, reject) => {
  request.get(`https://slack.com/api/users.list`, {
    qs: { token }
  }, (_, response) => {
    //some code
  });
});

我在这里缺少什么?

根据 Slack 的文档,要么提供的 token 无效,要么请求来自不允许发出请求的 IP 地址。在我的例子中 token 是正确的,所以我需要添加 IP 地址机?如果是这样,那么在哪里添加它?

如果有人能在这里帮助我,那就太好了。

提前致谢!

enter image description here

最佳答案

我有一个非常相似的问题,无法弄清楚它到底是怎么回事。将 token 添加到授权 header 也不起作用。

在 Slack 测试仪中一切正常,但来自 React 的请求总是得到 invalid_auth。 检查从 Slack 测试器发送的请求后,我发现它是作为表单数据发送的。为了模仿这一点,我做了以下操作:

  const bodyFormData = new FormData();
  bodyFormData.append("token", data.access_token);
  bodyFormData.append("team", slackUser.data.user.team_id);

  const slackTeam = await axios.post(
    "https://slack.com/api/team.info",
    bodyFormData,
    {
      headers: { "Content-Type": "multipart/form-data" },
    }
  );

那是成功的。

关于node.js - Slack users.list api 在传递有效 token 时也会抛出 invalid_auth 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68903694/

相关文章:

javascript - Node.js - 如何将变量备份到文件并在服务器重新启动时重新获取它?

javascript - 当 docker-compose 退出时运行可执行文件

java - 如何使用 simple-slack-api 确定是否在 Slack 中读取消息

python-3.x - Python 3 和 Slack 客户端 : ssl. SSLCertVerificationError

mysql - Slack webhooks 导致 cls-hooked 请求上下文孤立 mysql 连接

slack-api - 带有 Zapier 的 slacks 斜杠命令中的多个参数

node.js - Redis SET 与 SETNX 性能对比

node.js - Sequelize 与 sql 存储过程。在我的情况下我应该使用什么?

postman - 调用Slack的oauth/authorize时如何得到响应?

azure - 无法在 Slack 中向机器人发送 DM。机器人是使用 azure botframework 创建的,并使用了 channel 集成