2009-06-02 2 views
4

나는 셰어 포인트에 대한 caml querys를 만들고 테스트하기 위해 아주 작은 앱을 작성하고 있습니다. GetListItems 메서드를 실행하는 동안 다음 예외가 발생합니다.Sharepoint Lists.asmx : 요청이 빈 응답으로 실패했습니다.

System.Net.WebException: "The request failed with an empty response." 

서비스는 https 주소 (ssl)에 있습니다. 나는 다음과 같이 서비스를 설정했다.

result = new ListService.Lists(); 
result.Url = siteUrl; 
result.Credentials = new NetworkCredential(txtUserName.Text, txtPassword.Text, txtDomain.Text); 

다음과 같이 GetListItems() 메서드를 호출합니다.

xmlResult = spList.GetListItems(listName, string.Empty, camlQuery, null, string.Empty, null, string.Empty); 

나는 왜 내가 빈 결과 메시지를 얻고 있는지 알아 내려고하고있다. 나 또한 다른 방법 (예 : GetListCollection)을 시도했지만 아무 소용이 없습니다.

처음에 문제는 URL (https 대신 http)이 될 수 있다고 생각했지만, 그렇지 않았습니다. 심지어 wireshark를 사용하여 올바른 URL이 사용되는지 확인했습니다.

누군가이 문제와 관련되어 왔으며 어떻게 해결 했습니까?

+0

아직까지이 문제를 해결하지 못했지만 몇 가지 작업을 수행하는 것이 좋습니다. 1. 매개 변수를 사용하지 않으므로 GetListCollection()으로 테스트 ... 때로 SharePoint에서 매개 변수의 의미가 흐리거나 흐리거나 인 경우가 있습니다. 2. 네트워크 트래픽을 투명하게 캡처하려면 로컬 시스템에서 Fiddler2를 사용해야합니다. HTTPS 트래픽을 검사하도록 구성 할 수 있습니다. 3. SharePoint 로깅 수준 올리기 4. IIS의 액세스 및 오류 로그를 참조하여 거기에 아무 것도 표시되지 않는지 확인하십시오. –

+0

@Mark; 나는 GetListCollection()을 테스트했지만 비어있는 결과 이외의 것을주지 않았다. – Obelix

답변

6

OMG ...! 나는 결국 그것을 해결했습니다. 이 질문을 게시 한 후 wsdl을 확인하여 서비스 자체를 확인하려고했습니다. 내가 인터넷 익스플로러를 통해 확인했을 때 모두 괜찮 았어. VS에서 참조로 추가하려고했는데 잘못되었습니다. 그래서 뭔가가 좋지 않았습니다. 그런 다음 회사 네트워크에 대한 새 로그인 화면이 있음이 나에게 발생했습니다.

몇 가지 빠른 phonecalls 후 나는 문제가 무엇인지 배웠습니다. IT 서비스는 ISA 2006 서버를 설치했으며 알려주지 않았습니다. ISA 서버가 알 수없는 프로그램 및 클라이언트에 대해 HTTPS 포트 (443)의 모든 트래픽을 차단하고있었습니다. 그래서 인터넷 익스플로러가 새롭고 반짝이는 로그인 대화 상자를 보여주었습니다.

+4

하지만 ISA를 통해 웹 서비스에 연결하는 방법을 찾았습니까? – SteveCl

관련 문제