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

如何使用C#调用mail.tm API读取邮件消息?

问题原因
  • 令牌对应的邮箱账号未收到任何邮件:测试邮件投递存在延迟、收件地址填写错误、邮件被平台拦截都会导致邮箱内无邮件,接口自然返回空列表
  • 授权令牌无效或不匹配:你代码中使用的令牌如果和创建的邮箱账号不对应、或者令牌已经过期,部分场景下平台不会返回401错误,而是直接返回空的邮件列表
  • 请求参数有误:部分版本的mail.tm接口对page参数校验逻辑存在异常,传入错误的页码也会返回空结果
解决方法
  • 先验证令牌有效性:在调用邮件列表接口前,先调用GET https://api.mail.tm/me接口,传入同样的Authorization头,确认返回的邮箱地址是你创建的目标地址,如果返回401错误,重新创建邮箱获取最新的有效令牌
  • 确认邮件投递状态:使用其他邮箱向创建的mail.tm地址发送测试邮件后,等待10~30秒再调用邮件列表接口,避免因投递延迟取不到数据,同时确认收件地址没有拼写错误
  • 调整请求参数:可以先移除请求URL中的?page=1参数直接调用接口,也可以将Accept头修改为application/json提升兼容性
  • 补充响应校验逻辑:在代码中增加响应状态码、返回字段的校验,避免忽略异常情况,参考修改后的代码如下:
try
{
    // 先验证令牌有效性
    HttpWebRequest checkReq = (HttpWebRequest)WebRequest.Create("https://api.mail.tm/me");
    checkReq.Method = "GET";
    checkReq.Accept = "application/json";
    checkReq.Headers.Add(HttpRequestHeader.Authorization, "Bearer " + "替换为你实际获取的令牌");
    using (HttpWebResponse checkRes = (HttpWebResponse)checkReq.GetResponse())
    using (StreamReader checkSr = new StreamReader(checkRes.GetResponseStream()))
    {
        // 这里可以输出返回的邮箱地址确认是否正确
        Console.WriteLine(checkSr.ReadToEnd());
    }

    // 再获取邮件列表
    HttpWebRequest hwq = (HttpWebRequest)WebRequest.Create("https://api.mail.tm/messages");
    hwq.Method = "GET";
    hwq.Accept = "application/json";
    hwq.Headers.Add(HttpRequestHeader.Authorization, "Bearer " + "替换为你实际获取的令牌");
    using (HttpWebResponse res = (HttpWebResponse)hwq.GetResponse())
    using (var sr = new StreamReader(res.GetResponseStream()))
    {
        string resStr = sr.ReadToEnd();
        dynamic dd = JsonConvert.DeserializeObject(resStr);
        // 输出总邮件数确认
        Console.WriteLine($"总邮件数:{dd["hydra:totalItems"]}");
    }
}
catch (WebException ex)
{
    // 捕获接口异常,比如401令牌失效
    using (HttpWebResponse exRes = (HttpWebResponse)ex.Response)
    {
        Console.WriteLine($"接口错误,状态码:{exRes.StatusCode}");
    }
}

内容的提问来源于stack exchange,提问作者Abdelrahman Mahrous

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 23:48:04