#c# #asp.net-mvc #asp.net-core #http-post #razor-pages
#c# #asp.net-mvc #asp.net-core #http-post #razor-страницы
Вопрос:
Я написал веб-сайт в Asp.Net Версия Core 3.1
Сайт работает очень хорошо локально, но когда я отправляю его на удаленный сервер, я заметил, что параметры были пустыми.
К сожалению, я нигде не смог найти решение этой проблемы.
вот коды
Контроллер
[HttpPost]
public IActionResult GetInTouch(string name, string email, string subject, string message)
{
var result = _contactService.GetContact();
if (!result.Success) return Redirect("/NotFound");
var emailParameterResult = _emailParameterService.GetEmailParameter();
if (!emailParameterResult.Success) return Redirect("/NotFound");
var contactDto = _mapper.Map<ContactDto>(result.Data);
var emailParamterDto = _mapper.Map<EmailParameterDto>(emailParameterResult.Data);
var isSendMail = EmailSender.SendEmailMessage(contactDto.Email, name, email, subject, message, emailParamterDto);
var resultMessage = isSendMail
? "<div class='alert alert-success mb-20'>Mesajınız gönderildi!</div>"
: "<div class='alert alert-danger mb-20'>Mesaj gönderilirken bir hata meydana geldi.!</div>";
return View(new ContactModel()
{
SendResultMessage = resultMessage,
ContactDto = contactDto
});
}
Вид
<div class="contact-from contact-shadow">
<form asp-action="GetInTouch" asp-controller="Contact" method="post">
<input id="name" name="name" placeholder="İsim Soyisim" required>
<input id="email" name="email" placeholder="Email" required>
<input id="subject" name="subject" placeholder="Konu" required>
<textarea id="message" name="message" placeholder="Mesajınız" required></textarea>
<button class="submit" type="submit">Gönder</button>
</form>
</div>
Комментарии:
1. Когда вы говорите локально, вы имеете в виду, когда вы используете IIS express в Visual Studio, или вы опубликовали его и развернули в IIS на своем локальном компьютере?
2.
the parameters were blank
Вы пытаетесь перехватить запрос и проверить фактические данные, которые вы публикуете?3. Он работает, когда я запускаю проект через Visual Studio. Когда я запускаю его в режиме отладки, параметры поступают на контроллер через форму
4.
It works when I run the project through Visual Studio.
Хорошо, вы уже говорили об этом в своем исходном сообщении. Вы проверили запрос и фактические отправленные данные на производственный сайт? Кроме того, вы включаете ведение журнала, которое помогло бы устранить исключения?5. Проблема была не в коде. Я перенастроил брандмауэр на панели Plesk, и моя проблема была решена. Спасибо за вашу помощь.