2013-07-15 1 views
0

저는 C# .net에서 웹 서비스를 개발했습니다. 메소드를 다음과 같이 선언합니다 :.net 웹 서비스가 JSON serializaion을 수행하는 방법

public interface IServiceMeinMedicusApp 
{ 

    [OperationContract] 
    [WebInvoke(ResponseFormat = WebMessageFormat.Json, Method = "POST", BodyStyle = WebMessageBodyStyle.WrappedRequest, UriTemplate = "GetParamn/value")] 
    string GetParamn(int value); 
} 

제공된 WSDL에 따라 생성 된 Java 클라이언트도 있습니다. 자바 클라이언트에서 나는 동등한 Java 메소드를 호출함으로써 웹 서비스 메소드에 접근한다.

제 질문은 웹 서비스와 웹 클라이언트가 JSON 직렬화를 수행하는 방법입니다. 누군가가 JSON 형식을 적절한 주소로 보내서 내 웹 서비스에 액세스 할 수 있습니까? JSON에서 어떤 형식의 데이터가 있어야하며 어디에 전송해야합니까?

답변

0

나는 무엇을 제공해야하며, JSON의 데이터는 어떤 형식이어야하며 어디로 보내야합니까?

WSDL에서 생성 된 클라이언트이거나 수동 솔루션입니다. REST는 메타 데이터를 사용하지 않으므로 모든 소비자는 어떤 작업과 '데이터 계약'을 사용할 수 있는지 알 수 없습니다.

Java에서 WCF WSDL을 사용하거나 그 반대로 가져 오는 것이 항상 쉽지만 강력하게 형식화 된 REST 클라이언트를 수동으로 생성하는 것보다 쉽습니다. 내가 틀렸다면 나를 바로 잡아주세요.

Fiddler를 사용하여 요청을 캡처하여 클라이언트가 서비스에 보내는 것을 검사 할 수 있습니다. 그런 다음 데이터 및 URL 형식을 추출하여 서비스에 액세스하려는 다른 개발자에게 표시 할 수 있습니다.

+0

답변 해 주셔서 감사합니다. 엄격한 JSON 통신을 선호하는 고객을위한 해결 방법은 JSON 요청을 수신하고, 매개 변수를 읽고, 웹 서비스 메서드를 호출하고, 응답을 JSON으로 다시 보내고 요청자에게 반환 할 자체 클라이언트를 만드는 것입니다. – Dragon

0

호스트 된 웹 서비스의 웹 주소를 제공해야합니다. ResponseFormat을 WebmessageFormat.Json으로 설정 했으므로 JSON 직렬화가 발생합니다.

관련 문제