从IMAP发送FETCH邮件时获取加密字符串

时间:2018-06-15 07:42:40

标签: c# .net ssl imap tcpclient

我尝试使用TCPClient和SSL在C#.net上编写IMAP邮件客户端。我可以通过连接和身份验证,但是当我从imap.google.com获取邮件时,它会返回一个我无法读取的加密字符串。类似的东西:

Subject: =?UTF-8?B?UmU6IDMw5pyf5a6f57+S55Sf44Gu5oOF5aCx44Gr6Zai44GX44Gm?=

我的FETCH命令如下

"$ FETCH " + number + " body[header]\r\n"
"$ FETCH " + number + " body[text]\r\n"

我需要做些什么才能正确显示邮件的标题和正文?

1 个答案:

答案 0 :(得分:1)

  

主题:=?UTF-8?B?UmU6IDMw5pyf5a6f57 + S55Sf44Gu5oOF5aCx44Gr6Zai44GX44Gm?=

根本没有加密。这只是根据MIME标准使用base64编码的主题,请参阅RFC 2047。对其进行解码会生成Re: 30期実習生の情報に関して

为了处理这样的编码,你需要根据MIME标准对其进行解码,即读取标准并自己实现所有内容,或者搜索一些实现RFC 2047的现有库。