亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

通過 .net core smtpClient 發送郵件:SmtpException

通過 .net core smtpClient 發送郵件:SmtpException

C#
皈依舞 2022-07-23 18:11:22
我正在嘗試通過 .net 核心中的 SmtpClient 發送郵件?;旧衔抑皇菍⒁恍┡f的 .net 框架代碼遷移到 .net 核心。在舊系統中,它通過以下方式完成:using (var smtpClient = new SmtpClient("smtp.xyz.de", 587)){   smtpClient.UseDefaultCredentials = false;   smtpClient.Credentials = new System.Net.NetworkCredential("user", "password", "domain");   smtpClient.EnableSsl = true;   smtpClient.Send(mailMessage);}這段代碼工作正?!,F在我將此代碼遷移到 .net 核心,如下所示: using (var smtpClient = new SmtpClient("smtp.xyz.de", 587)) {    smtpClient.UseDefaultCredentials = false;    smtpClient.Credentials = new NetworkCredential("user", "password", "domain");    smtpClient.EnableSsl = true;      smtpClient.Send(mailMessage); }第一個問題是現在我收到一條錯誤消息:輸入不是有效的 Base-64 字符串,因為它包含非 base 64 字符、兩個以上的填充字符或填充字符中的非法字符。堆棧跟蹤:   at System.Convert.FromBase64CharPtr(Char* inputPtr, Int32 inputLength)   at System.Convert.FromBase64String(String s)   at System.Net.Mail.SmtpNegotiateAuthenticationModule.GetSecurityLayerOutgoingBlob(String challenge, NTAuthentication clientContext)   at System.Net.Mail.SmtpNegotiateAuthenticationModule.Authenticate(String challenge, NetworkCredential credential, Object sessionCookie, String spn, ChannelBinding channelBindingToken)   at System.Net.Mail.SmtpConnection.GetConnection(String host, Int32 port)   at System.Net.Mail.SmtpTransport.GetConnection(String host, Int32 port)   at System.Net.Mail.SmtpClient.GetConnection()   at System.Net.Mail.SmtpClient.Send(MailMessage message)由于該錯誤,我嘗試將用戶和密碼字符串轉換為 Base64,如下所示:using (var smtpClient = new SmtpClient("smtp.xyz.de", 587)){   var userEncoded = Convert.ToBase64String(Encoding.UTF8.GetBytes("user"));   var passwordEncoded = convert.ToBase64String(Encoding.UTF8.GetBytes("password"));   smtpClient.UseDefaultCredentials = false;   smtpClient.Credentials = new NetworkCredential(userEncoded, passwordEncoded, "domain");   smtpClient.EnableSsl = true;                  smtpClient.Send(mailMessage);              }這樣做我得到另一個錯誤:SMTP 服務器需要安全連接或客戶端未通過身份驗證。服務器響應為:5.7.1 客戶端未通過身份驗證
查看完整描述

1 回答

?
藍山帝景

TA貢獻1843條經驗 獲得超7個贊

我自己找到了答案:

這很尷尬,我感到很慚愧,但我所做的所有測試都使用了錯誤的密碼。由于惱人的錯誤信息,我從來沒有想到它:(


查看完整回答
反對 回復 2022-07-23
  • 1 回答
  • 0 關注
  • 479 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號