2012-11-15 2 views
0

Visual Studio 2010/로컬 IIS에서 잘 작동하는 webHttpBinding 바인딩이 포함 된 WCF 서비스가 있습니다. 이 서비스에는 .NET의 HttpWebRequest 객체를 통해 내 별도의 웹 응용 프로그램 프로젝트가 호출하는 POST 메서드가 하나만 있습니다. JSON은 요청 및 응답에 사용됩니다. 요청 및 응답에는 DataContractJsonSerializer에 의해 JSON으로 변환되거나 JSON에서 변환 된 객체가 포함됩니다.WCF webHttpBinding 서비스가 로컬로 작동하지만 IIS 7.5에서 "400 Bad Request"가 발생합니다.

같은 네트워크에있는 다른 Windows Server 2008 R2 시스템에 서비스를 배포하면 로컬에서 올바르게 작동하는 동일한 호출 코드에 대한 응답으로 "400 Bad Request"가 생성됩니다. "호출 코드"란 Visual Studio에서 실행중인 웹 응용 프로그램을 의미합니다.

브라우저를 통해 .svc 파일을 보는 데 문제가 없습니다.

요청이 1KB 미만이므로 크기가 문제가되지 않는 것 같습니다. 단지 큰 요청을 허용하기 위해 서비스의 Web.config를 조정했지만 그로 인해 도움이되지 않았습니다.

+0

추가 세부 사항. 이 문제는 이제 간헐적으로 발생합니다. 때로는 서비스가 작동하고 때로는 "400 Bad Request"가 반환되며 예기치 않은 문자 "<"가 발생하는 직렬화 오류가 발생하는 경우가 있습니다. 이것은 단지 더 거대하고 더 거칠 것입니다. IIS를 다시 시작하는 것이 도움이되지 않지만 w3wp.exe 프로세스를 강제 종료하면 문제가 일시적으로 해결됩니다. 또한 동일한 네트워크의 VMware 가상 시스템에 내 웹 앱과 WCF 서비스가 상주해야합니다. –

답변

0

질문을 게시 한 직후 해결되었습니다. 일들을 정리해야합니다.

내 Cisco RV220W가 혼란에 빠졌습니다. 요청을 올바르게 전달하지는 않지만 정확히 무엇을하고 있었는지와 왜 그 행동이 간헐적 이었는지의 본질은 저를 넘어선 것입니다. 그것을 재부팅하면 내 문제가 해결됩니다.