2012-07-03 2 views
6

메시지 처리기/DelegatingHandler에서 컨트롤러 나 동작을 꾸미는 속성에 액세스하는 실용적인 방법이 있습니까?Message Handler에서 Controller/Action 속성에 액세스 할 수 있습니까?

Pedro Felix's blog entry에서 the diagram에 이르기까지 Message Handler가 파이프 라인에서 너무 일찍 나타나고 Controller Dispatcher Message Handler가 실행될 때까지 정보를 사용할 수없는 것으로 보입니다. 옳은? 나는 Thinktecture 정체성 모델로 일하고 있어요, 그리고 AuthenticationHandler에서 AllowAnonymous 속성을 찾을 수있을 것이 유용 할 것이다
: 내 사용 사례에 대해

.

답변

2

사실상, 이것은 이것을 구현하는 데있어 잘못된 장소 인 것처럼 보입니다. 앞에서 언급 한 것처럼 Message Handler는 모든 요청과 응답에서 작동합니다. 속성에 의존하는 경우 자연스럽게 필터가됩니다. 그래서 나는 그 길을 따라 가길 권합니다.

실제로 처리기에서는 ApiController 또는 동작으로 이동한다고 가정 할 수 없습니다. 핸들러는 클라이언트에서도 동등하게 사용할 수 있습니다.

+1

답변 해 주셔서 감사합니다 +1. 나는 너의 건축 관측에 온 마음을 다하여 동의한다. 그러나 때때로 당신은 당신이 다루어지는 손을 가지고 있습니다. IdentityModel의 AuthenticationHandler는 Message Handler로서 구현됩니다. 유효하지 않은 토큰은 처리를 멈추고 HTTP 401을 반환합니다. ** 유효한 토큰을 발행하는 메서드에 대한 면제를 원할 때 ** 예외를 제외하고 모든 상황에 완벽합니다 (3 번째 파티 서비스). – EBarr

+0

Dominick과 이야기하는 것이 가장 좋습니다. 그는 제품에 맞을 때 제안에 매우 열려 있습니다. 나는 아직 그것을 깊이 보지 않았지만 곧 데리러 갈 필요가있다. – Aliostad

+0

동의 - 우리는 앞뒤로 가고있어, 나는 그 주제에 대해 그에게 이메일을 보내고있다. 변경 사항을 덜 혼란스럽게 만드는 대안을 찾고있었습니다. BTW ... 그는 조금 너무에 나타나기 시작했습니다 - http://stackoverflow.com/users/672453/leastprivilege – EBarr