如何从 Trello API 检索用户头像?

How to retrieve user avatar from a Trello API?

trello API 只给出哈希值,例如 avatarHashgravatarHashuploadedAvatarHash 等。有没有办法从 url 中检索图像这些哈希?

Trello 使用 Gravatar,因此您返回的哈希与此直接相关。

基础 URL 将是:http://www.gravatar.com/avatar/

您可以添加 jpg 和 1 到 512 之间的尺寸。

一个例子:

http://www.gravatar.com/avatar/ [这里的散列].jpg?s=80

会返还80px头像

function get_gravatar(hash, size) {           
    var size = size || 80;

    return 'http://www.gravatar.com/avatar/' + hash + '.jpg?s=' + size;
}

使用此哈希,您可以通过 url 检索图像:http://trello-avatars.s3.amazonaws.com/${avatarHash}/50.png

唉,截至 2020-05-05,这两个答案都不起作用。

  1. gravatarHash 解决方案可以从 Gravatar 获取头像,但我不确定该解决方案是否如 Trello API 返回的 [=11] 所述那样有效=],因为 Trello API returns 是一个不透明的 avatarHash,它与 gravatarHash 不同。根据 Gravatar APis,它们是经过修剪的小写 MD5 电子邮件地址。所以 gravatarHash ≠ Trello avatarHash.

  2. https://trello-avatars.s3.amazonaws.com/{avatarHash}/50.png 现在是 403。 Trello 开发人员进行了更改。

新解决方案: 使用 https://trello-members.s3.amazonaws.com/{id}/{avatarHash}/50.png

其中 {id} 是 member/user id,{avatarHash} 与从 Trello API 检索到的相同。 API 也允许您指定返回 id,因此请使用 API 调用将其添加到字段列表中。

通过查看 Trello.com 上的头像进行验证,事实上,他们似乎只使用了这个 trello-members URL.

如果添加字段 avatarUrl.

,则会在相同的数据响应中返回

我已经更新了我们的 Gmail-2-Trello Chrome 扩展程序 (https://g2t.pub/chrome),它可以在这个新模式下正常工作。

截至 2020 年 7 月 14 日,正确的 URL 路径如下:

https://trello-members.s3.amazonaws.com/{member.id}/{member.avatarHash}/{size}.png

注意:这似乎不适用于任意大小值,但它确实适用于大小 = 170。