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 +23 -0
- package/05-02.js +45 -0
- package/05-03.js +7 -0
- package/m05-EUE.js +30 -0
- package/m06-EUE-test.js +7 -0
- package/package.json +8 -0
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
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;
|
package/m06-EUE-test.js
ADDED