0

[HttpPost] 속성 또는 해당 POST 메서드를 이해하므로 상태가 변경되면이 메서드가 사용됩니다. 이 같은 loginUrl으로 폼 인증을 설정 한 경우 : 리디렉션을 강제ASP.NET MVC HttpPost 및 SignOn() 혼동

<forms loginUrl="~/Account/LogIn" ... 

이 [권한 부여] 속성이 발견 될 때. 예 :

[Authorize] 
public ActionResult AccessPrivateData() 
{ 
    // Should redirect to /Account/LogIn if AuthCookie not set 
    // ... 
} 

지금까지 그렇게 좋았습니다. 게시물을 정당화,

[HttpPost] 
public ActionResult LogIn(string username, string password) 
{ 
    // Won't find the URL (/Account/LogIn) if redirected to here... 
    // ... 
} 

을하지만 로그인 행동이 참으로 상태를 변경하지 않을 : 내 문제는 내가 사용할 수 없습니다 [HttpPost] 지금 로그인 작업을 위해 (당신이 POST로 리디렉션 할 수 없기 때문에)이다 ? 제발 누군가 설명해 줄 수 있고 가능하다면 어떻게하는지 설명해주세요.

답변

2

두 개의 LogIn 작업을 수행 할 수 있습니다. 리디렉션은 GET을 사용하여 간단히 로그인 양식을 렌더링하는 작업으로 전송됩니다.

양식이 게시되면, 내가 [이 질문/답] 우연히 [HttpPost]

[HttpGet] 
public ActionResult Login() 
{ 
    // Render view 
} 

[HttpPost] 
public ActionResult LogIn(string username, string password) 
{ 
    // Process form post 
} 
+0

장식 방법 (http://stackoverflow.com/questions/5332275/why-would-를 사용합니다 i-use-httppost-attribute-in-mvc)를 사용하십시오. 나는 기억해야만 했어! 감사 – Didaxis