I made a site using ASP .Net Core and it works fine when submitting the contact form on the site I made while I was testing before publishing, but after publishing I get 500 internal server errors. I'm new to these things please help. If you want to test live, the link of the contact form: https://www.alitural.com/home/contact
C# codes
[HttpPost]
public IActionResult Contact(string name, string email, string subject, string message)
{
if (message != null)
{
SmtpClient smtp = new SmtpClient();
smtp.UseDefaultCredentials = false;
smtp.Credentials = new NetworkCredential("", "");
smtp.Port = 587;
smtp.Host = "smtp.gmail.com";
smtp.EnableSsl = true;
MailMessage msg = new MailMessage();
msg.To.Add("");
msg.From = new MailAddress("");
msg.Subject = subject;
msg.Body = " <p> Name : " + name + " </p> <p> Email : " + email + " </p><p> Subject : " + subject + " </p> <p> Message : " + message + " </p>";
msg.IsBodyHtml = true;
smtp.Send(msg);
}
return View();
}
Js codes
function sub() {
let formData = {};
for (var i = 0; i < inputs.length; i++) {
let fieldName = inputs[i].firstElementChild.getAttribute('Name');
let fieldValue = inputs[i].firstElementChild.value;
formData[fieldName] = fieldValue;
}
var name = document.getElementById("name");
var email = document.getElementById("email");
var subject = document.getElementById("subject");
var message = document.getElementById("message");
if (name.value == "" && email.value == "" && message.value == "") {
for (var i = 0; i < inputs.length; i++) {
if (inputs[i].firstElementChild.value == "") {
if (inputs[i].childElementCount != 2) {
inputs[i].innerHTML += '<label for="name" class="error">This field is required.</label>';
}
}
}
} else {
let requestData = '';
let request = new XMLHttpRequest();
let dataArray = [];
for (let property in formData) {
dataArray.push(`${property}=${formData[property]}`);
requestData = dataArray.join('&');
}
request.onreadystatechange = function () {
console.log(this.readyState);
if (this.readyState == 4 && this.status == 200) {
name.value = "";
email.value = "";
message.value = "";
subject.value = "";
alert.className = "alert alert-success";
alert.innerHTML = "Your message has been send!";
setTimeout(function () {
$(alert).fadeOut();
}, 8000);
}
else {
alert.className = "alert alert-danger";
alert.innerHTML = "An error occured try again later!";
}
};
request.open("POST", "/Home/Contact", true);
request.setRequestHeader(
"Content-type",
"application/x-www-form-urlencoded",
);
request.send(requestData);
}