Я столкнулся с проблемой с тем, что должно быть простой формой входа в ASP.NET MVC 2. По существу моя форма выглядит примерно так:
using (Html.BeginForm("LogOn", "Account", new { area = "Buyers" }, FormMethod.Post, new { ID = "buyersLogOnForm" }))
У меня есть фильтр RequiresHTTPS в методе действия LogOn, но когда он выполняется, я получаю следующее сообщение
Запрошенный ресурс может быть доступ через SSL
В этот момент единственным решением, которое работало, было передать дополнительный атрибут html action следующим образом:
var actionURL = "https://" + Request.Url.Host + Request.Url.PathAndQuery;
using (Html.BeginForm("LogOn", "Account", new { area = "Buyers" }, FormMethod.Post, new { ID = "buyersLogOnForm", @action = actionURL }))
В то время как это работает, я задаюсь вопросом: а) почему я вижу эту проблему в первую очередь и б) если есть более простой способ публикации на https с http-страницы?
[изменить]
Я должен был указать, что выпадающий список входа будет доступен на многих общедоступных страницах. Я не хочу, чтобы все мои страницы были HTTPS. Например, моя страница надежды, которую ANYONE может видеть, не должна основываться на HTTPS. По сути, мне нужно указать протокол в моей форме, но не знаю, как это сделать или если это возможно.
Буду признателен за любые советы/предложения. Спасибо заранее
В JP