看到日志里有 服務器無法在已發送 HTTP 標頭之后設置狀態
網上的很多方法都是下面的處理,其實沒找到問題的根源
Response.Clear();
Response.BufferOutput = true;
這個問題一般都是在用戶認證里進行跳轉時出現
由於我們的過濾器來判斷用戶是否登錄,沒登錄跳到登錄頁。但在redirect后,控制器里的action代碼還要運行,包括 return view()
因為redirect要設置httpstatus,向客戶端發送輸出,action里還要設置httpstatus進行輸出,所以報錯
假若不讓action里的代碼運行就不會報這個錯誤了,不讓運行的辦法是
filterContext.Result = new EmptyResult();
請解決了這個問題的朋友給我點贊。