我有一個使用 Angular 創建的網站,在“聯系我們”中有一個聯系表格,并希望允許用戶發送訊息。聯系資料應發送到我的個人電子郵件地址。
使用 HTML 和 PHP 發送聯系表單資料非常簡單,現在使用 Angular 作為前端,使用 Spring Boot 作為后端和 AWS 服務,相比之下,似乎更具挑戰性。除了設定 Angular 反應式表單之外,有誰知道從哪里開始?
uj5u.com熱心網友回復:
將您的 Angular 表單資料發布到 Spring Boot 控制器。Angular 網站和 Spring BOOT 后端是分離的。
然后,您可以設定 Spring 后端以使用Amazon SES Java V2 API發送電子郵件。您可以使用發布的表單資料來構建電子郵件訊息。
以下 Java 代碼是發送電子郵件的 SES Java V2 代碼示例。
package com.example.ses;
// snippet-start:[ses.java2.sendmessage.request.import]
import software.amazon.awssdk.auth.credentials.ProfileCredentialsProvider;
import software.amazon.awssdk.regions.Region;
import software.amazon.awssdk.services.ses.SesClient;
import software.amazon.awssdk.services.ses.model.*;
import software.amazon.awssdk.services.ses.model.Message;
import software.amazon.awssdk.services.ses.model.Body;
import javax.mail.MessagingException;
// snippet-end:[ses.java2.sendmessage.request.import]
/**
* Before running this Java V2 code example, set up your development environment, including your credentials.
*
* For more information, see the following documentation topic:
*
* https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/get-started.html
*/
public class SendMessageEmailRequest {
public static void main(String[] args) {
final String usage = "\n"
"Usage:\n"
" <sender> <recipient> <subject> \n\n"
"Where:\n"
" sender - An email address that represents the sender. \n"
" recipient - An email address that represents the recipient. \n"
" subject - The subject line. \n" ;
if (args.length != 3) {
System.out.println(usage);
System.exit(1);
}
String sender = args[0];
String recipient = args[1];
String subject = args[2];
Region region = Region.US_EAST_1;
SesClient client = SesClient.builder()
.region(region)
.credentialsProvider(ProfileCredentialsProvider.create())
.build();
// The HTML body of the email.
String bodyHTML = "<html>" "<head></head>" "<body>" "<h1>Hello!</h1>"
"<p> See the list of customers.</p>" "</body>" "</html>";
try {
send(client, sender, recipient, subject, bodyHTML);
client.close();
System.out.println("Done");
} catch (MessagingException e) {
e.getStackTrace();
}
}
// snippet-start:[ses.java2.sendmessage.request.main]
public static void send(SesClient client,
String sender,
String recipient,
String subject,
String bodyHTML
) throws MessagingException {
Destination destination = Destination.builder()
.toAddresses(recipient)
.build();
Content content = Content.builder()
.data(bodyHTML)
.build();
Content sub = Content.builder()
.data(subject)
.build();
Body body = Body.builder()
.html(content)
.build();
Message msg = Message.builder()
.subject(sub)
.body(body)
.build();
SendEmailRequest emailRequest = SendEmailRequest.builder()
.destination(destination)
.message(msg)
.source(sender)
.build();
try {
System.out.println("Attempting to send an email through Amazon SES " "using the AWS SDK for Java...");
client.sendEmail(emailRequest);
} catch (SesException e) {
System.err.println(e.awsErrorDetails().errorMessage());
System.exit(1);
}
}
// snippet-end:[ses.java2.sendmessage.request.main]
}
如果您不熟悉適用于 Java V2 的 AWS 開發工具包,請參閱https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/get-started.html。
您可以在此處找到 SES POM 檔案: https ://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javav2/example_code/ses
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/486288.html
上一篇:如何在水豚中編輯日歷輸入元素
