Ich stoße auf ein Problem mit, was sollte ein einfaches Anmeldeformular in ASP.NET MVC 2 sein. Im Wesentlichen sieht mein Formular ein wenig etwas wie dieses:
using (Html.BeginForm("LogOn", "Account", new { area = "Buyers" }, FormMethod.Post, new { ID = "buyersLogOnForm" }))
Ich habe einen RequiresHTTPS-Filter auf die LogOn Action-Methode, aber wenn es ausgeführt wird, erhalte ich die folgende Meldung
Die angeforderte Ressource kann nur über SSL zugegriffen werden
An diesem Punkt war die einzige Lösung, die funktionierte, ein zusätzliches html-Attribut für Aktionen wie folgt einzufügen:
var actionURL = "https://" + Request.Url.Host + Request.Url.PathAndQuery;
using (Html.BeginForm("LogOn", "Account", new { area = "Buyers" }, FormMethod.Post, new { ID = "buyersLogOnForm", @action = actionURL }))
Während dies funktioniert, frage ich mich, a) warum ich dieses Problem in erster Linie sehen und b) wenn es eine direktere Möglichkeit der Buchung auf https von einer http-Seite ist?
[Bearbeiten]
Ich hätte darauf hinweisen sollen, dass das Dropdown-Menü für die Anmeldung auf vielen öffentlichen Seiten verfügbar sein wird. Ich möchte nicht, dass alle meine Seiten HTTPS sind. Zum Beispiel sollte meine Hoffnungsseite - die JEDER sehen kann - nicht HTTPS-basiert sein. Im Grunde muss ich das Protokoll in meinem Formular angeben, aber ich habe keine Ahnung, wie ich das machen soll oder ob es möglich ist.
Ich würde mich über jeden Ratschlag/Vorschlag freuen. Vielen Dank im Voraus
JP