ASP와 통신하려면 일반적으로 HttpPost 및 기타 요청에서 __VIEWSTATE 및 _ EVENTVALIDATION 토큰을 보내야합니다. 기본 페이지에서 HttpGet을 호출하고 Regexes 또는 간단한 str.contains (" _VIEWSTATE")와 함께 Patten을 사용하여 HTML에서이를 제거하고 모든 요청을 보낼 수 있습니다.
당신이 어떤 게시물을 수행하지 않는 경우, 단지 기본 GET을, 당신은 너무으로, 적절하게 헤더를 설정하고 있는지 확인 :
HttpGet req = new HttpGet("YOUR SITE'S URL");
req.setHeader("Content-Type", "application/x-www-form-urlencoded");
req.setHeader("Host", "YOUR SITE'S ROOT PAGE");
req.setHeader("User-Agent", "Mozilla/5.0 ...");
req.setHeader("Accept-Encoding", "gzip,deflate,sdch");
req.setHeader("Accept", "text/html,application/xhtml+xml,application/xml");
req.setHeader("Accept-Language", "en-us,en");
req.setHeader("Accept-Charset", "ISO-8859-1,utf-8");
HttpResponse resp = client.execute(req, localContext);
당신이 저장할 수있는 가능한 세션 쿠키에 대해 잊지 마세요 에서 HttpContext를도에 전달할 모든 실행 위에서 볼 :
CookieStore cookieStore = new BasicCookieStore();
HttpContext localContext = new BasicHttpContext();
localContext.setAttribute(ClientContext.COOKIE_STORE, cookieStore);
이론에 대해 이동하는 가장 좋은 방법은, 피들러를 다운로드 크롬에서 사이트 운영, 무슨 일이 일어나고 있는지보고 실제 브라우저 요청을 모방하는 것입니다 앱 : http://www.fiddler2.com/fiddler2/
이것은 클라이언트 문제보다 서버 측 문제 (잘못된 콘텐츠를 제공하는 서버)와 비슷하게 들린다 –
ASP 형식 위젯은 무엇을 의미합니까? SharePoint 페이지에서 거의 모든 내용이 양식의 일부입니다. 따라서 페이지에는 HTML 양식 요소가 있습니다. 다운로드 한 컨텐츠를 일반 브라우저로 액세스 할 때 페이지의 컨텐츠와 비교 했습니까? 또 다른 문제점은 요청중인 실제 페이지에 액세스하기 전에 인증해야한다는 것입니다. 아마도 귀하가받는 콘텐츠를 게시 할 수 있습니다. – Flo