m06-eue 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
package/05-02.html ADDED
@@ -0,0 +1,23 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+
4
+ <head>
5
+ <meta charset="UTF-8">
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
+ <title>Отправка почты с помощью Nodemailer</title>
8
+ </head>
9
+
10
+ <body>
11
+ <h1>Отправка почты с помощью Nodemailer</h1>
12
+ <form action="http://localhost:3001/sendmail" method="post">
13
+ <label for="senderEmail">Email отправителя:</label><br>
14
+ <input type="email" id="senderEmail" name="senderEmail" required><br><br>
15
+ <label for="recipientEmail">Email получателя:</label><br>
16
+ <input type="email" id="recipientEmail" name="recipientEmail" required><br><br>
17
+ <label for="message">Сообщение:</label><br>
18
+ <textarea id="message" name="message" rows="4" cols="50" required></textarea><br><br>
19
+ <button type="submit">Отправить</button>
20
+ </form>
21
+ </body>
22
+
23
+ </html>
package/05-02.js ADDED
@@ -0,0 +1,45 @@
1
+ const express = require('express');
2
+ const nodemailer = require('nodemailer');
3
+ const bodyParser = require('body-parser');
4
+
5
+ const app = express();
6
+
7
+ app.use(bodyParser.urlencoded({ extended: true }));
8
+
9
+ app.post('/sendmail', (req, res) => {
10
+ const { senderEmail, recipientEmail, message } = req.body;
11
+
12
+ const transporter = nodemailer.createTransport({
13
+ host: 'smtp.mail.ru',
14
+ port: 465,
15
+ secure: true,
16
+ auth: {
17
+ user: 'yrmatel00@mail.ru',
18
+ pass: '6zZ6emmGrnBS5gYxtdDw'
19
+ }
20
+ });
21
+
22
+ const mailOptions = {
23
+ from: 'yrmatel00@mail.ru',
24
+ to: recipientEmail,
25
+ subject: 'Тестовое письмо с помощью Nodemailer',
26
+ html: `<p>${message}</p>`
27
+ };
28
+
29
+ transporter.sendMail(mailOptions, (error, info) => {
30
+ if (error) {
31
+ console.log(error);
32
+ res.send('Ошибка при отправке письма');
33
+ } else {
34
+ console.log('Email отправлен: ' + info.response);
35
+ res.send('Письмо успешно отправлено');
36
+ }
37
+ });
38
+ });
39
+
40
+ app.use(express.static('public'));
41
+
42
+ const PORT = process.env.PORT || 3001;
43
+ app.listen(PORT, () => {
44
+ console.log(`Server running on port ${PORT}`);
45
+ });
package/05-03.js ADDED
@@ -0,0 +1,7 @@
1
+ const send = require('./m05-EUE');
2
+
3
+ const email = 'yrmatel00@mail.ru';
4
+ const password = '6zZ6emmGrnBS5gYxtdDw';
5
+ const message = 'Hello!';
6
+
7
+ send(email, password, message);
package/m05-EUE.js ADDED
@@ -0,0 +1,30 @@
1
+ const nodemailer = require('nodemailer');
2
+
3
+ function send(email, password, message) {
4
+ const transporter = nodemailer.createTransport({
5
+ host: 'smtp.mail.ru',
6
+ port: 465,
7
+ secure: true,
8
+ auth: {
9
+ user: email,
10
+ pass: password
11
+ }
12
+ });
13
+
14
+ const mailOptions = {
15
+ from: email,
16
+ to: email,
17
+ subject: 'Тестовое письмо с помощью Nodemailer',
18
+ html: `<p>${message}</p>`
19
+ };
20
+
21
+ transporter.sendMail(mailOptions, (error, info) => {
22
+ if (error) {
23
+ console.log(error);
24
+ } else {
25
+ console.log('Email отправлен: ' + info.response);
26
+ }
27
+ });
28
+ }
29
+
30
+ module.exports = send;
@@ -0,0 +1,7 @@
1
+ const send = require('m06_EUE');
2
+
3
+ const email = 'yrmatelgmail.com@mail.ru';
4
+ const password = '6zZ6emmGrnBS5gYxtdDw';
5
+ const message = 'Это тестовое сообщение';
6
+
7
+ send(email, password, message);
package/package.json ADDED
@@ -0,0 +1,8 @@
1
+ {
2
+ "name": "m06-eue",
3
+ "version": "1.0.0",
4
+ "dependencies": {
5
+ "express": "^4.19.1",
6
+ "nodemailer": "^6.9.13"
7
+ }
8
+ }