Spring Boot REST API始终返回404 Not Found错误排查求助
Spring Boot OTP发送接口404 Not Found问题求助
我开发了一个用于向指定邮箱发送OTP验证码的Spring Boot REST API,但调用接口/api/v1/otp/sendOTP时始终返回404 Not Found错误,错误响应示例如下:
{ "timestamp": "2024-02-12T11:50:31.545+00:00", "status": 404, "error": "Not Found", "path": "/api/v1/otp/sendOTP" }
以下是我的OTPController类代码:
package com.example.chatappAPI10.Controllers; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import com.example.chatappAPI10.DTO.OTPDetails; import com.example.chatappAPI10.Service.SendOTPNumber; @RestController @RequestMapping(value = "api/v1/otp") public class OTPController { @Autowired private SendOTPNumber sendOTPNumber; @SuppressWarnings("rawtypes") @PostMapping(value = "/sendOTP") public ResponseEntity sendOTP(@RequestBody OTPDetails otpDetails) { System.out.println("otpDetails.getToMail()"); return sendOTPNumber.sendOTPNumber(); } }
以及SendOTPNumber服务类代码:
package com.example.chatappAPI10.Service; import java.util.Random; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.mail.SimpleMailMessage; import org.springframework.mail.javamail.JavaMailSender; import org.springframework.stereotype.Service; import com.example.chatappAPI10.DTO.OTPDetails; import com.example.chatappAPI10.DTO.ResponseDTO; @Service public class SendOTPNumber { @Autowired private JavaMailSender javaMailSender; @Autowired private ResponseDTO responseDTO; @Autowired private OTPDetails otpDetails; private void setRandomOTP() { Random random = new Random(); int randomNumber = random.nextInt(9000) + 1000; otpDetails.setOtpNumber(String.valueOf(randomNumber)); } private void setFromEmail() { otpDetails.setFromEmail("ketawalagedhanusha@gmail.com"); } private void setSubject() { String subjectOfEmail = "Hello Chat up! OTP verification"; otpDetails.setMailSubject(subjectOfEmail); } @SuppressWarnings("rawtypes") public ResponseEntity sendOTPNumber() { try { SimpleMailMessage otSimpleMailMessage = new SimpleMailMessage(); setFromEmail(); setRandomOTP(); setSubject(); otSimpleMailMessage.setFrom(otpDetails.getFromEmail()); otSimpleMailMessage.setSubject(otpDetails.getMailSubject()); otSimpleMailMessage.setText(otpDetails.getOtpNumber()); otSimpleMailMessage.setTo(otpDetails.getToMail()); javaMailSender.send(otSimpleMailMessage); responseDTO.setCode("200"); responseDTO.setMessage("Success"); responseDTO.setOtpNumber(otpDetails.getOtpNumber()); return new ResponseEntity<>(responseDTO, HttpStatus.ACCEPTED); } catch (Exception e) { responseDTO.setCode("404"); responseDTO.setMessage(e.getMessage()); return new ResponseEntity<>(responseDTO, HttpStatus.BAD_REQUEST); } } }
我认为DTO类与当前问题无关,所以未提供。我已尝试过Stack Overflow上的相关解决方案,但问题仍未解决,希望得到帮助。
内容的提问来源于stack exchange,提问作者K.D.Dilshan
相关产品推荐
相关产品推荐

