簡體   English   中英

帶服務的asp.net Web應用程序

[英]asp.net web application with a service

我有一個簡單的asp.net Web應用程序項目。 其中有一個order.aspx頁面顯示不同的項目。 我設法通過在page_load事件中輸出來顯示那些項目。

現在,我正在使用JQuery從數據庫加載項目詳細信息,並顯示用戶單擊項目的時間。

這是我正在使用的JQuery

$(".item").click(function(){
    $.post("Lookup.asp",
    {
        Id: $(this).id 
    },
    function(data, status){
        alert("Data: " + data + "\nStatus: " + status);
    });
});

現在,我想知道設置后端部分以提供數據的最佳方法是什么,什么是最佳方法。 目前,我正在考慮其頁面加載事件上的Lookup.aspx頁面將從請求對象接收ID,我查詢db填充數據並通過響應對象將其發送回。 我不確定這是否是正確的方法。

我尚未設置此設置,因為我在考慮是否要創建一個單獨的頁面來執行此操作,那么我將不得不為其他類型的查詢創建更多頁面(我將有其他查詢,例如檢查db中某個項目的狀態)。

我在想這種方法的另一個問題是,將存在僅用於提供數據的頁面,而我們不想將其顯示給公眾。 如果某人擁有這些頁面的名稱,他們可以訪問我們不需要的頁面。

而且我正在使用實體框架,無論如何這都很重要。

對於Web服務部分。 最好,最簡單的方法是使用WEB API。 只需編寫一個控制器方法,它就成為返回json或xml的Web服務。

將Web API與ASP.NET Web窗體一起使用

現在關於第二部分是棘手的。 如果您的用戶未登錄,則該方法必須是公共的,以便某人可以訪問。 因此,無論是通過ajax還是僅通過擁有url的人,都將並且必須能夠訪問該方法。

解決此問題的一種方法是對產品ID進行加密-解密。

或在Web API上使用身份驗證。

https://www.asp.net/web-api/overview/security/authentication-and-authorization-in-aspnet-web-api

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM