頁面方法和安全
回答
所有這一切EnablePageMethods="true"
確實是產生一個內聯JavaScript代理,允許通過PageMethods
語法叫回ASP.NET AJAX Page Methods
。
我更喜歡通過其.ajax()
方法使用jQuery調用ASP.NET AJAX Page Methods
,像這樣:
代碼隱藏
[WebMethod]
public static string GetDate()
{
return DateTime.Now.ToString();
}
的JavaScript:
$.ajax({
type: "POST",
url: "PageName.aspx/GetDate",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
// Do something interesting here.
}
});
注:由於ASP.NET AJAX Page Methods
自動序列化他們的反應到JSON
,然後"json"
是退貨dataType
的AJAX調用。 contentType
描述了你發送給服務器的內容。
爲什麼你更喜歡.ajax的方式?更多控制? –
是的,我更喜歡jQuery .ajax因爲它提供了更多的控制,並且'PageMethods'語法有更多的RPC(遠程過程調用)的感覺,我必須指定額外的參數作爲成功和錯誤的回調函數。我也不是JavaScript塊的狂熱粉絲被注入到t中他的頁面。我可能感覺這樣,因爲我已經開始使用ASP.NET MVC和ASP.NET WebForms進行更多的開發。 –
要麼方法必須是靜態的權利? –
它沒有比將任何普通網頁或服務添加到網站更多的安全影響。所需的注意事項是相同的 - 不要在沒有先驗證它們的情況下使用任何輸入,不要在錯誤消息中無意中返回敏感信息等。
有一種更新的方法,並且可以說更好,不介意切換到新的平臺:ASP.Net MVC,以及相關的「Web API」。 (You can use Web API with Webforms also,感謝卡爾·安德森在評論中指出。)
好吧如果你使用webforms?我現在不能切換 –
@MicahArmantrout然後,沒有什麼新的和改進的ASP.Net AJAX,據我所知 – McGarnagle
只是爲了澄清你也可以在WebForms中使用ASP.NET Web API。查看[在ASP.NET Web窗體中使用Web API](http://www.asp.net/web-api/overview/creating-web -apis/using-web-api -with-aspnet-web-forms) –
- 1. 混合安全和非安全頁面
- 2. Nservicebus和安全方面
- 3. 安全和不安全的win32方法
- 4. Rails 3在非安全頁面和安全頁面之間傳遞參數
- 5. 安全xmlhttprequest從不安全的頁面
- 6. 從安全頁面鏈接到不安全頁面
- 7. Asp.net 4.0中的安全和不安全的頁面
- 8. 頁面包含安全和非安全項目
- 9. IE7:此頁面包含安全和非安全項目
- 10. 此頁面包含安全和非安全項目以及iframe
- 11. 確保頁面級安全性的最佳方法
- 12. 提高登錄頁面安全性的方法
- 13. asp.net AJAX頁面方法是否非常安全?
- 14. 無法獲取登錄頁面重定向到安全頁面
- 15. jQuery Mobile的安全頁面
- 16. Glassfish not loading安全頁面
- 17. Sharepoint頁面級安全
- 18. Neo4j網頁界面安全
- 19. 登錄頁面安全性?
- 20. 安全兩個JSP頁面
- 21. chrome.tabs.captureVisibleTab安全頁面上?
- 22. MVC全局方法安全
- 23. document.ready和asp.net頁面方法
- 24. Spring安全方法安全註釋
- 25. 彈簧安全方法的安全性和動態
- 26. 強迫非安全頁面重定向到安全頁面與htaccess
- 27. 當從非安全頁面發佈到安全頁面時,django csrf失敗
- 28. 靜態方法和線程安全
- 29. 線程安全方法和堆棧
- 30. Java靜態方法和線程安全
安全隱患與將這些方法放在Web服務中相同。 –
只是FYI pagemethods不能在usercontrols上工作:( –