C#:密码中使用特殊字符的 SMTP 登录
本文关键字:特殊字符 SMTP 登录 密码 | 更新日期: 2023-09-27 18:33:55
我尝试通过SMTP发送电子邮件。在我的SMTP帐户中,我使用了一些特殊字符:"äöü"。
SmtpClient client = new SmtpClient(this.Host, this.Port);
client.Credentials = new NetworkCredential(this.Login, this.Password);
// setting message
client.Send(message);
我总是收到服务器的错误消息"需要身份验证"。
当我将密码更改为另一个没有特殊字符的密码时,一切正常。
如何将特殊字符传递给 SMTP 服务器?这是否适用于GMX,WEB,T-ONLINE,Googlemail等多个服务器?
顺便说一句:我需要使用 .Net 2.0!
感谢您的任何提示,伴侣
根据所使用的身份验证机制,用于对字符串进行编码的字符集对于要进行身份验证的特定服务器可能是错误的。
一些服务器对 PLAIN 和登录 SASL 机制使用非 UTF-8 字符集(即它们设置为使用区域的语言环境字符集)。不幸的是,客户端无法知道这是什么字符集。
其他SASL机制,如DIGEST-MD5,允许客户端和服务器协商使用哪个字符集(通常最终是UTF-8)。