如何使用SSO强制更新头像?

我正在使用 SSO,并在用户登录时传递此数组:

// 最后构建我们要传递给 Discourse 的大数组
$userParams = [
    'external_id'         => $userObject->getID(),
    'email'               => $userObject->getEmail(),
    'username'            => $name,
    'avatar_url'          => $forumThumbURL,
    'avatar_force_update' => 'true',
    'groups'              => implode(',', $groupsArray),
];

问题在于头像从未更新。我在网站上一直显示旧的头像,似乎无法更改。我可以登录和注销,我知道这段代码已被调用,但没有变化。我的 Sidekiq 队列为 0。

这是针对管理员用户的,这会有影响吗?

您传递的参数看起来是正确的。尝试为管理员用户设置头像应该不会有任何影响。您确定传递的 avatar_url 是正确的吗?如果您尝试以新用户身份登录,头像是否能正确设置?

嘿,谢谢回复。所以我用另一个用户试了一下——对那个用户来说没问题。但对我的管理员账号来说,不行,它还是不肯放下那张图片。

我意识到,我的管理员头像就是当初设置论坛时从 Gravatar 下载的那张,从那以后我就完全关闭了 Gravatar。但这会不会是导致它不肯更新的原因呢?