Тестирование сервера SMTP работает через C#

А1: потому что вы строите линию, и я подозреваю, что х не отсортирован.

А2. См. Вопрос 1.

A3: используйте следующее и посмотрите, как это работает (поскольку вы используете numpy):

x = np.array(x)
y = np.array(y)
plt.plot(x[x.argsort()], y[x.argsort()], label='Hello,World')

РЕДАКТИРОВАТЬ: если у вас много шума, вы можете попробуйте построить меньше точек, например:

plt.plot(x[x.argsort()][::3], y[x.argsort()][::3], label='Hello,World')    #each 3 points

или построить скользящее среднее (см. здесь )

22
задан Roman Starkov 12 July 2011 в 15:55
поделиться

4 ответа

Вы можете попробовать сказать EHLO вашему серверу и посмотреть, отвечает ли он 250 OK. Конечно, этот тест не гарантирует, что вам удастся отправить письмо позже, но это хороший показатель.

А вот пример:

class Program
{
    static void Main(string[] args)
    {
        using (var client = new TcpClient())
        {
            var server = "smtp.gmail.com";
            var port = 465;
            client.Connect(server, port);
            // As GMail requires SSL we should use SslStream
            // If your SMTP server doesn't support SSL you can
            // work directly with the underlying stream
            using (var stream = client.GetStream())
            using (var sslStream = new SslStream(stream))
            {
                sslStream.AuthenticateAsClient(server);
                using (var writer = new StreamWriter(sslStream))
                using (var reader = new StreamReader(sslStream))
                {
                    writer.WriteLine("EHLO " + server);
                    writer.Flush();
                    Console.WriteLine(reader.ReadLine());
                    // GMail responds with: 220 mx.google.com ESMTP
                }
            }
        }
    }
}

А вот список кодов , которые следует ожидать.

64
ответ дан 29 November 2019 в 03:30
поделиться

Вот хороший инструмент с открытым исходным кодом (делает больше, чем MX): http://www.codeproject.com/KB/IP/DNS_NET_Resolver.aspx

1
ответ дан 29 November 2019 в 03:30
поделиться

Вы можете открыть порт (25) с сокетом или TcpClient и посмотрите, отвечает ли он.

3
ответ дан 29 November 2019 в 03:30
поделиться

Откройте сокет-соединение с сервером smtp на порту 25 и посмотрите, что вы получили. В противном случае нет сервера smtp.

3
ответ дан 29 November 2019 в 03:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: