2012-06-11 3 views
2

.json 문자열을 .net wcf 서비스에 게시하려고합니다.WCF 서비스에 문자열 매개 변수를 게시하면 직렬화 해제 오류가 발생합니다.

다음은 작업의 정의입니다 :

[WebInvoke(Method = "POST", UriTemplate = "test/")] 
[OperationContract] 
[Description("Test")] 
void Test(string input); 

내 테스트를 보낼 피들러를 사용합니다. 여기 피들러 정보는 다음과 같습니다

유형의 선택 System.String의 객체를 직렬화 복원 오류가 발생했습니다

POST http://localhost/test.svc/test/ HTTP/1.1 
Content-Type: application/json 
Host: localhost 
Content-Length: 4 

test 

나는 항상이 HTTP 400 오류를 수신합니다. 토큰 'true'가 필요했지만 'test'가 발견되었습니다.

내가 뭘 잘못하고 있니? 아마 뭔가 분명 할거야.하지만 오늘 아침 이후로 나왔다. ...

가장 단순한 표현으로 문제가 해소되었다. 실제 세계에서는 JSON이라는 문자열을 게시하려고합니다. 그러나 우리는 .net이 비 직렬화를 처리하는 것을 원하지 않으며, 우리는 서비스 자체에서 우리 자신을 위해 그것을하고 싶습니다.

답변

7

요청 내용

test 

이 유효 JSON되지 않습니다. 따옴표 안에 문자열을 보내야합니다.

POST http://localhost/test.svc/test/ HTTP/1.1 
Content-Type: application/json 
Host: localhost 
Content-Length: 6 

"test" 
+0

부끄러운 느낌 .... 하하. 고맙습니다. –

관련 문제