Slack users.list api 在传递有效令牌时也会抛出 invalid_auth 错误

Slack users.list api throwing invalid_auth error on passing of valid token as well

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

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

下面是我的代码

 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 的文档,Either the provided token is invalid or the request originates from an IP address disallowed from making the request. 在我的情况下令牌是正确的,所以我需要添加机器的 IP 地址吗?如果是这样,那么在哪里添加它?

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

提前致谢!


Slack API授权似乎有一些变化。

不是将令牌作为查询参数传递,而是
将其作为授权header传递。

我遇到了一个非常相似的问题,无法弄清楚到底是怎么回事。将令牌添加到授权 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" },
    }
  );

成功了。