2016-08-05 4 views
0

인터넷의 다른 곳에서 호스팅되는 또 다른 편안한 서비스에 의한 데이터 푸시 읽기에 사용되는 안정적인 WCF 서비스가 있습니다. 다른 서비스에서 Json 데이터 푸시를 읽는 한 가지 방법을 공개해야합니다.WCF 푸시 알림 데이터 수신을위한 휴식 서비스

[ServiceContract] 
public interface ITestService 
{ 
    [OperationContract] 
    [WebInvoke(Method = "GET", 
     ResponseFormat = WebMessageFormat.Json)] 
    string GetData(string JsonData); 
} 

문자열 매개 변수로 데이터를받는 것이 옳은지, 아니면 DataContract (Class)가 Json 데이터를 수신하도록해야합니까? 다른 서비스에서 Json 데이터 푸시의 구조를 알고 Get 메서드를 만들 수 있습니까? 또한 푸시 서비스는 대량의 데이터를 한 번에 보낼 수 있습니다. 내 서버가 벌크 데이터로도 잘 작동하도록 어떻게 제한 할 수 있습니까?

답변

0

저는 개인적으로 WCF의 기본 JSON 처리가 마음에 들지 않으므로 Newtonsoft.Json을 사용합니다! 데이터 값을 문자열로 정의한 다음 들어오는 데이터와 JSON 스키마 파일을 비교합니다. 제 생각에는 WCF를 얼마나 광범위하게 사용하는지에 따라 다릅니다. 사용을 위해 WCF를 주로 정의 된 데이터 인터페이스를 사용하는 TCP 연결에 사용합니다. REST API는 내부 디버깅을위한 것으로 노출되지 않습니다. 따라서 명확하게 문서화 된 API는 그렇게 중요하지 않습니다. 적절한 데이터 계약을 정의하면 WCF가 편리한 서비스 +/help의 루트 URL에서 생성 한 자동화 된 문서를 활용할 수 있습니다.

어쨌든 푸시 알림을 수신하려면 HTTP GET을 사용하지 않아야합니다.

POST/PUT은 푸시 알림을위한 적절한 끝점입니다. 다음 기사는 이유로 REST 노선을하는 방법을 정의하는 방법을 아주 잘 설명 : 약간의 도움이

http://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api#restful

희망을.