【发布时间】:2020-11-11 08:54:40
【问题描述】:
您好,我正在尝试为我的 spring 应用程序制作电子邮件确认 api 用户需要输入他/她的姓名、备注、公司/工作、电子邮件。后 收到这个对象我想发送一个确认链接到电子邮件。
这是 HTML 代码:
<form method="POST" th:object="${Signature}">
<label>Name : </label>
<input id="inputName" type="text" th:field="*{name}">
<label>Note : </label>
<input id="inputNote" type="text" th:field="*{note}">
<br>
<label>Company : </label>
<input id="inputCompany" type="text" th:field="*{company}">
<label>Contact Info : </label>
<input id="inputContact" type="email" th:field="*{email}" placeholder="This info will not be shared">
<button>Submit</button>
<br>
</form>
这是控制器
@Controller
@RequestMapping("/")
public class RootController
{
@GetMapping
public String root(Model model)
{
model.addAttribute("Signature", new Signature());
return "Public/Home";
}
@PostMapping
public String signPosted(Signature s)
{
System.out.println("Post Received");
return "redirect:/thanks";
}
}
注意:即使应用程序在 root("/") 上,用户在发帖时也必须转到 /#contact
这是对象类
import lombok.Data;
import javax.validation.constraints.NotBlank;
@Data
public class Signature
{
//@NotBlank(message="Name is required")
private String name;
private String note;
//@NotBlank(message="Name is required")
private String email;
//@NotBlank(message="Name is required")
private String company;
public Signature(){}
public Signature(String name,
String note,
String email,
String company)
{
this.name = name;
this.note = note;
this.email = email;
this.company = company;
}
}
当我点击提交按钮时,它会将您带到错误页面并且消息是
出现意外错误(type=Forbidden,status=403)。
我的安全配置是
http
.authorizeRequests()
.antMatchers("/admin/**")
.authenticated()
.antMatchers("/**")
.permitAll()
.anyRequest()
.authenticated()
.and()
.httpBasic();
【问题讨论】:
标签: spring spring-boot spring-security http-post thymeleaf