2011-02-17 4 views

답변

0

수동으로 HTTP 조작 및 쿠키를 처리해야합니다. 꽤 괜찮은 설명이 this page에 있습니다. C#으로 HTTP 요청을 처리했다면 거기에 설명 된 방법을 선택하는 것이 문제가되어서는 안됩니다.

+0

이 페이지에 익숙합니다. 나는 거기에서 코드 조각을 사용할 수 있기를 바랬다. Windows Mobile 6 용 HTTP 요청 항목을 일부 작성했기 때문에 약간 알고 있습니다. WP7에서 WebClient를 사용하는 것처럼 좋았습니다.하지만 슬프지만 ... –

2

아주 간단합니다. 먼저 https://www.google.com/accounts/ClientLogin 페이지로의 GET 요청을 로그인과 비밀번호로 수행해야합니다 (URL 인코딩을 잊지 마세요). 그리고 나서 응답을 구문 분석합니다 (새 매개 변수로 나누어 진 여러 매개 변수가 \n이 됨) SID이됩니다. 다음은 간단한 예제 (오류 처리)입니다 :

var url = string.Format("https://www.google.com/accounts/ClientLogin?service=reader&Email={0}&Passwd={1}", 
    HttpUtility.UrlEncode(email), 
    HttpUtility.UrlEncode(password) 
); 
var web = new WebClient(); 
web.DownloadStringCompleted += (sender, e) => 
{ 
    var sid = e.Result.Split('\n') 
     .First(s => s.StartsWith("SID=")) 
     .Substring(4); 
}; 
web.DownloadStringAsync(new Uri(url)); 

하지만 당신은 AsyncCTP를 사용하여이 코드를 더 우아한 만들 수 있습니다.

관련 문제