2016-08-17 50 views
0

我有一個ASP.NET MVC 5應用程序,它處理來自我的網站使用獲取API所做的請求。 當我的控制器發生異常時,我使用自定義的「OnException」方法,從System.Web.Mvc.Controller重寫,以JSON方式發送結果,其中包含有關錯誤的數據。我這樣做是因爲我不想發送默認的HTML錯誤頁面。 在這個方法中,所有控制器都是全局的,我需要檢查請求是否已經使用獲取API執行(如果沒有,我什麼都不做)。服務器如何檢測使用抓取API所做的請求?

我該怎麼做?

  • 我應該添加一個自定義的http頭到我的請求嗎?
  • 我應該在我的所有請求中添加一個特定的參數嗎?
  • 我有完全錯誤的做法嗎?

回答

2

特定標題或特定參數中的任一個都可以工作; 「乾淨」的方法可能是將提取發送的請求中的「Accept:」頭設置爲「application/json」,表示該請求正在尋找JSON響應,並將其用於服務器端以便確定是否發送JSON或HTML。