2013-03-23 10 views
1

是否可以從http頁面發佈到https表單?以下是代碼示例,我不確定如何將其發佈到HTTPS版本的頁面。使用MVC4通過Ajax.BeginForm發佈到HTTPS表格構造

@using (Ajax.BeginForm("Register", "Home", null, new AjaxOptions { UpdateTargetId = "dlgPopup" }, new { @class = "form_main", id = "form_register"})) 

乾脆把[RequireHttps]屬性到控制器的動作似乎並不奏效。

回答

1

正如您已經懷疑的那樣,這種要求違反了Same origin policy。 IIS對XSS,僞造和許多攻擊採取了預防措施。

在子域的情況下,可以將其調整爲IIS內的設置。但是在協議更改的情況下,您將無法簡單地向未被類似「保護」的頁面發出安全套接字層請求。

使您的挑戰更大,您將發送非加密數據到要求受保護的數據格式的頁面。由於您的操作方法已被指示不信任未加密的數據,因此應拒絕該請求。我不知道該方法是否會被視爲匹配,但這應該在JS調試器中得到證實(404錯誤將表示不匹配)。