#javascript #c# #asp.net-mvc #model-view-controller #recaptcha
#javascript #c# #asp.net-mvc #модель-представление-контроллер #recaptcha
Вопрос:
Я совсем новичок в веб-разработке, у меня всего пара недель опыта. В настоящее время работает над веб-сайтом C # и не может заставить ReCaptchaV3 работать.
У меня есть форма подписки, которая отображается как модальная, когда пользователь нажимает кнопку «подписаться» на странице бюллетеня.
В форме у меня есть скрытое поле ввода: <input type="hidden" name="Google-captcha-token" id="GoogleCaptchaToken">
Он генерирует токен при нажатии кнопки «Зарегистрироваться» в форме.
Моя проблема в том, как мне получить доступ к этому значению на серверной части в C #? а затем отправить его в Google для проверки? Мне также нужно проверить, находится ли значение, которое я получил от Google, в пределах необходимого диапазона, и все хорошо, продолжайте отправлять форму. Вот где я застрял. Я понимаю, что мне нужно поймать это значение и работать с ним в контроллере, но не знаю, как это сделать. Надеюсь, кто-нибудь сможет мне помочь в этом.
Вот как выглядит код в контроллере
public class BulletinController : _SharedController {
public ActionResult Index(int p = 0) {
var perPage = 10;
if (p < 1) {
p = 1;
}
var starting = (p * perPage) - perPage;
if (starting < 0) {
starting = 0;
}
var token = HttpContext.Request.Form["Google-captcha-token"];
var ns = new NewsServices();
var newsArticles = ns.GetNewsArticles(starting, perPage);
var count = ns.GetNewsArticlesCount();
ViewBag.Paging = Pagination.Generate(count, starting, perPage);
return View(newsArticles);
}
public ActionResult Details(int id) {
var article = new NewsServices().GetNewsArticleByID(id);
if (article == null) {
return HttpNotFound();
}
return View(article);
}
}
Я просмотрел много видео о том, как это должно быть сделано, но ни одно из них не сработало.
Похоже, проблема в том, что для просмотра страницы уже используется модель, и эта модель генерируется автоматически. Похоже, я не могу использовать другую модель. Текущая модель также является моделью списка (хотя не уверен, что это именно означает).
Другое дело, что отправка формы не проходит через серверную часть и выполняется с помощью скрипта регистрации constantcontact JavaScript.
Надеюсь, кто-нибудь сможет помочь. Спасибо.