javascript - 发布后在网站上获取 500 内部服务器错误联系表
问题描述
我使用 ASP .Net Core 创建了一个站点,并且在发布前测试时在我创建的站点上提交联系表单时它工作正常,但在发布后我收到 500 个内部服务器错误。我是这些东西的新手,请帮忙。如果您想现场测试,联系表格的链接:https ://www.alitural.com/home/contact
C# 代码
[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代码
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);
}
解决方案
推荐阅读
- html - 如何嵌入外部 html 并更改 css 样式?
- java - 为 Java 中的每个单元测试重新初始化枚举值
- sql - 使用 Slick 在选择中过滤
- c# - C# 在抓取之前等待网页加载
- java - 无法从 WSDL 创建 Web 服务(netbeans:指定的 WSDL 文件中没有服务。)
- php - Laravel 如何在多个图像之间进行选择,如 og:image
- javascript - React : date[("get" + method)] 不是函数
- c++ - 使用迭代器读取类对象向量中的向量失败
- javascript - Vuejs 3 API 文档
- javascript - 下面代码的输出是NaN,为什么?