1

Windows azure アプリケーションに smtp クライアントがあります。クライアントはシミュレーターでは正常に動作しますが、クラウド インスタンスでは例外がスローされます。

例外メッセージは次のとおりです。

The SMTP server requires a secure connection or the client was not authenticated The server's response was 5.5.1 authentication required

コマンドラインで資格情報を出力して、クラウド上で資格情報が正しいことを確認しました。ファイアウォールも無効にしました。

PS: 私は gmail smtp サーバーを使用しています。

これが私のコードです:

 private void SetupClient()
    {
        _emailSetting = new EmailSetting();
        _smtpClient = new SmtpClient(_emailSetting.SMTP_Server, _emailSetting.Port);
        _smtpClient.EnableSsl = true;
        _smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
        _smtpClient.Credentials = new NetworkCredential(_emailSetting.EmailUser, _emailSetting.EmailPass);
    }


    public void Report(String msg)
    {
        MailMessage mailMessage;

        if (_smtpClient == null)
        {
            SetupClient();
        }

        String receivers = String.Join(",", Receivers);
        mailMessage = new MailMessage(_emailSetting.EmailUser, receivers, "Error", msg);
        _smtpClient.Send(mailMessage);

    }
4

2 に答える 2

1

私は同様の問題。あなたのアプリが「奇妙な」場所からログインしようとしているため、解決策は非常に「奇妙」でした。ログインのブロックに関する情報が記載された通知/メールが Gmail に届いているかどうかを確認してください。

于 2013-04-05T12:30:58.940 に答える
0

これを修正する 1 つの方法は、Azure VM に RDP を実行し、そこから Gmail アカウントにログインすることです。「奇妙な」場所であるため、Googleはアカウントを確認するように求めます. メールが確認されると、正常に機能します。

于 2013-09-22T20:00:17.860 に答える