You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C#中使用WTelegramClient如何删除Telegram账号头像

C# 基于WTelegramClient删除Telegram账号头像实现方案

WTelegramClient完全对齐Telegram原生API能力,删除账号头像不需要额外魔改,按以下流程调用即可:

  • 前置条件:你已经完成客户端初始化、手机号验证码登录流程,持有已授权的WTelegram.Client实例,以及登录成功后返回的当前登录用户User对象。
  • 第一步:拉取当前账号的头像列表
// 拉取当前账号下最多100张历史头像,普通用户场景可覆盖全部头像数据
var userPhotos = await client.Photos_GetUserPhotos(
    user_id: currentLoggedInUser.Id,
    offset: 0,
    max_id: 0,
    limit: 100
);
  • 第二步:构造待删除头像的参数,调用删除接口
    如果你只需要删除当前正在展示的头像,取返回列表的第一项即可;如果需要清空所有历史头像,遍历整个userPhotos.Photos列表构造参数传入即可。
// 示例:删除当前生效的头像
var targetPhoto = userPhotos.Photos.First() as Photo;
var deleteInput = new InputPhoto
{
    Id = targetPhoto.Id,
    AccessHash = targetPhoto.AccessHash,
    FileReference = targetPhoto.FileReference
};
// 执行删除
await client.Photos_DeletePhotos(new List<InputPhoto> { deleteInput });

常见坑点:如果接口返回FILE_REFERENCE_EXPIRED错误,重新调用一次Photos_GetUserPhotos拿到最新的FileReference再提交删除就行,这是Telegram官方API的文件引用有效期机制,不是代码bug。

  • 校验结果:删除后重新拉取一次当前用户信息,若用户对象的Photo字段为空/默认头像标识,即代表删除成功。

内容的提问来源于stack exchange,提问作者Isfandiyor Akbarov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 08:57:37