나는이 방법으로 아래와 같이 RESTful 서비스를 구축하고 대한 클라이언트 통과 매개 변수 (참고 : 나는 ASPNETCompatilibilityMode이 true로 설정되어) : 이제어떻게 편안 WCF 서비스
[WebInvoke]
string TestMethodA()
{
string test = HttpContext.Current.Request.Form["xml"];
}
[WebInvoke]
string TestMethodB(string res)
{
string xml = res;
}
의 클라이언트 구축 순서는 다음 작업을 수행 할 MethodA에 매개 변수를 전달합니다 :
request.AddParameter("xmlString", HttpUtility.HtmlEncode(requestBody));
그리고 MethodB 메시지를 보내기 위해 내가 다음을 수행하십시오
request.AddParameter("text/xml",requestBody, ParameterType.RequestBody);
이제 질문은 :
매개 변수를 전달하는 방법에 대해 고객이 어떻게 알 수 있습니까? 클라이언트는 서버 구현을 인식하지 못합니다.
요청을 보내는 클라이언트가 RestSharp API를 사용하고 있습니다.
귀하의 서비스는 일반적으로 이상적이지 않은 인프라 (이 경우 요청 본문에 표시되는 HTTP)에 대한 지식이 있습니다. TestMethodA가 문자열을 취한 다음 항상 메소드를 같은 방식으로 호출하는 것이 아닌가? 그렇게하면 HTTP 바인딩에서 호스팅하지 않아도 서비스가 작동하고 클라이언트는 서비스를 호출하는 방법을 알아야하는 한 가지 방법 만 사용할 수 있습니다. – kmp