10
POST에서 페이로드로 사용자 이름과 암호를 받아 들여야하는 다음 컨트롤러가 있습니다. 내가 HttpGet으로 변경하면 작동한다.WebAPI - WebAPI Cors에서 속성 라우팅 POST가 작동하지 않습니까?
[RoutePrefix("api")]
public class AccountController : ApiController
{
[HttpPost("login/{username}/{password}")]
[AcceptVerbs("POST")]
public Login Login(string username, string password)
{
Login login = new Login();
if (username == "user" && password == "pw") login.Success = true;
else login.Success = false;
return login;
}
}
OPTIONS 요청은 통과 할 수 있지만 POST가 실패합니다.
OPTIONS 헤더 :
OPTIONS 응답 :
POST 헤더 :
을
POST 응답 :
내가 잘못 어떤 생각?
나는 이것을 바로 시도 할 것이다. 그러나 시나리오 5 [HttpPost ("my/action1/{param1}/{param2"}]가 작동해야합니다. https://aspnetwebstack.codeplex.com/wikipage?title=Attribute%20routing%20in%20Web% 20API – niklr
그렇다면 param1과 param2가 모두 URL에서 온 것이기 때문에 작동해야합니다. 귀하의 경우처럼 요청 본문이 아닙니다. – nemesv
왜 HttpPost를 사용합니까? 나 한테는 말이 안돼. – niklr