2011-06-14 2 views
0

this issue 이후 WP7에서 Spring.net Rest를 성공적으로 사용하고 있습니다.특정 콘텐츠 유형이 포함 된 REST 요청

내 REST 서비스에는 특정 콘텐츠 형식이 필요합니다. 다른 요청 인터셉터를 사용하려고 시도했지만 XElementHttpMessageConverter가 컨텐트 유형을 무시합니다. 당신이 "IClientHttpRequestFactoryInterceptor"너무 아니라 인터셉터와 그렇게 할 수있는 BTW,

public MyClient(string baseAddress) 
{ 
    restTemplate = new RestTemplate(baseAddress); 
    //restTemplate.RequestInterceptors.Add(new NoCacheRequestInterceptor()); 

    XElementHttpMessageConverter linqXmlConverter = new XElementHttpMessageConverter(); 
    linqXmlConverter.SupportedMediaTypes = new MediaType[] { MediaType.Parse("type/subtype") }; 
    restTemplate.MessageConverters.Add(linqXmlConverter); 
} 

:

public MyClient(string baseAddress) 
{ 
    restTemplate = new RestTemplate(baseAddress); 
    //restTemplate.RequestInterceptors.Add(new NoCacheRequestInterceptor()); 
    restTemplate.MessageConverters.Add(new XElementHttpMessageConverter()); 
} 

public MyObject GetMyObject(int id) 
{ 
    XElement element = restTemplate.GetForObject<XElement>("path/{id}", id); 
    //.. 
    return myObject; 
} 

// more methods 

답변

1

그렇게하는 여기에 가장 좋은 방법은 "SupportedMediaTypes"속성으로 컨버터를 구성하는 것입니다 이는 요청 생성을 차단합니다. "IClientHttpRequestBeforeInterceptor"대신 요청 실행을 차단해야합니다.