method: is POST in HTML and in django is post:
error : This page isn’t working If the problem continues, contact the site owner. HTTP ERROR 405
HTML contact form code
<div class="col-lg-6">
    <form action="" method="post" role="form" class="form-example">
      <div class="form-row">
        <div class="col-md-6 form-group">
          <input type="text" name="name" class="form-control" id="names" placeholder="Your Name" data-rule="minlen:4" data-msg="Please enter at least 4 chars" required />
          <div class="validate"></div>
        </div>
        <div class="col-md-6 form-group">
          <input type="email" class="form-control" name="email" id="emails" placeholder="Your Email" data-rule="email" data-msg="Please enter a valid email" required />
          <div class="validate"></div>
        </div>
      </div>
      <div class="form-group">
        <input type="text" class="form-control" name="subject" id="subjects" placeholder="Subject" data-rule="minlen:4" data-msg="Please enter at least 8 chars of subject" required />
        <div class="validate"></div>
      </div>
      <div class="form-group">
        <textarea class="form-control" name="message" id= "messages" rows="5" data-rule="required" data-msg="Please write something for us" placeholder="Message" required ></textarea>
        <div class="validate"></div>
      </div>
Django view:
class ContactView(APIView):
def post(self, request):
    serailizer_class = ContactSerializer(data=request.data)
    if serailizer_class.is_valid():
        contact = Contact(
            name=serailizer_class.data.get('name'),
            email=serailizer_class.data.get('email'),
            subject=serailizer_class.data.get('subject'),
            message=serailizer_class.data.get('message')
        )
        contact.save()
        email_from = contact.email
        names = contact.name
        send_mail("new contact form submitted", names, email_from, ['reciever@gmail.com'], )
        return Response({"success": "contact Sent"})
    return Response({'success': "Failed"}, status=status.HTTP_400_BAD_REQUEST)
javascript file:
const add_contact =async()=>{
const names = document.getElementById('names').value
const emails = document.getElementById('emails').value
const subjects = document.getElementById('subjects').value
const messages = document.getElementById('messages').value    
    const response = await fetch('https://herokuapp_name.herokuapp.com/contact/',{
        method:"POST",
        body:JSON.stringify({
            name:names,
            email:emails,
            subject:subjects,
            message:messages
        }),
        headers:{
            "Content-Type": "application/json"
        }
    })
    const responseData = await response.json()
    console.log(responseData)
    if(response.ok){
        location.href="../../index.html"
    }else{
        alert(responseData.error)
    }
}
document.getElementById('submit').addEventListener('click',add_contact)
remember: if I test using postman it work well but if I am using front-end web it doesn't work
 
    