使用 JWT 访问 Stream REST Api 时出错

Error accessing Stream REST Api using JWT

我正在尝试使用 JWT 令牌访问流提要,但它每次都返回 404。

令牌header:

{
  "alg": "HS256"
}

令牌负载:

{
  "resource": "feed",
  "action": "read"
}

令牌是使用 jjwt 库生成的,并使用我的帐户仪表板中提供的秘密进行签名。我还在 jwt.io 上验证了它,它是一个有效的令牌

Url

GET: https://api.getstream.io/api/v1.0/feed/notification/666?api-key=...
Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJyZXNvdXJjZSI6ImZlZWQiLCJhY3Rpb24iOiJyZWFkIn0.MUZHXQg0UD6jFpCZN5Mn1e7wwys_1qYuVtfBKtHL8QU

回应

{
    "exception": "GetStreamAPI404",
    "detail": "sorry you've hit a 404"
}

我是不是漏掉了什么?无法弄清楚问题是什么。

为了执行正确的权限检查,您需要在令牌负载中包含 feed_id 字段。该字段的值必须与您尝试阅读的提要相同,并且格式为 ${feed_group}:${feed_id}.

例如,您问题 (https://api.getstream.io/api/v1.0/feed/notification/666?api-key=) 中请求的负载应该是:

{
  "resource": "feed",
  "action": "read",
  "feed_id": "notification:666"
}

注意:API URL 必须以尾部斜杠结尾(例如 /api/v1.0/feed/notification/666/?api_key=...)

Auth HTTP headers:

授权 必须只包含 JWT 令牌

stream-auth-type 必须与值 jwt

一起发送