Да, это возможно. Но не практично ** См. Редактировать 2
Некоторые реализации HTML5 включают поддержку веб-сокетов, по сути, соединение по tcp с сервером. Наложите некоторый код send / recv, и вы сможете создать SMTP-клиент.
На самом деле похоже, что для реализации клиента smtp была использована поддержка nodejs и websocket ... см. Здесь ...
Вам все равно понадобится smtp-сервер, имя пользователя, пароль и т. Д., Как и для стандартного smtp-клиента, чтобы он работал.
Использование этого метода для рассылки спама маловероятно, поскольку ваш поставщик SMTP может легко удалить вашу учетную запись.
=== РЕДАКТИРОВАТЬ ===
На самом деле вы можете создать версию без сервера, для поиска mx-записей потребуется также выполнить поиск на сервере имен. Однако есть вероятность, что любые приличные SMTP-серверы поддерживают таблицы черного списка спам-листов, и при подключении со случайного IP-адреса электронная почта обычно помечается как спам.
Также может быть затруднено общение с серверами SMTP, которым требуются безопасные почтовые соединения.
Как уже упоминалось, в этой реализации есть злонамеренное использование, например рассылка спама. Я думаю, возможно, вы могли бы быть создателем ботнета HTML5, но я бы подумал, что вы уже знаете большую часть этого:)
=== РЕДАКТИРОВАТЬ 2 ===
Как отметил Марк В Ramp51, рукопожатие требуется с веб-сокетами. Это было то, о чем я не знал. Вам придется взломать реализацию websocket, чтобы обойти рукопожатие.
Правильный способ - пересылать электронную почту веб-серверу.