WCF REST를 사용하여 사용자 정의 HTTP 상태 코드를 어떻게 읽을 수 있습니까?
-
03-07-2019 - |
문제
WCF의 channelfactory를 사용하여 REST 서비스를 호출하고 있으며 서버가 PUT 호출에 대한 응답으로 HTTP 200 또는 201을 반환했는지 여부를 결정하고 싶습니다. 현재 호출이 성공하지만 내 객체가 생성되었는지 또는 업데이트되었는지 확인할 수 없습니다. 어떻게 할 수 있습니까?
해결책
WCF는 모든 종류의 채널을 위해 설계되었으므로 높은 수준의 객체가 아닙니다.
이런 식으로 액세스 할 수 있습니다
factory.Endpoint.Behaviors.Add(new WebHttpBehavior());
IMyContract proxy = factory.CreateChannel();
using (OperationContextScope scope = new OperationContextScope((IContextChannel)proxy)) {
proxy.MyMethod("Some data"));
var responseCode = WebOperationContext.Current.IncomingResponse.StatusCode;
}
((IClientChannel)proxy).Close();
factory.Close();
제휴하지 않습니다 StackOverflow