문제

TeamCity에서 유물을 뽑고 싶습니다.

C#과 HtmlagilityPack을 사용하여 웹 사이트를 얻고 최신 버전과 아티팩트를 찾으려고 노력했습니다. 나는 현재 로그인에 갇혀 있었는데 세션 쿠키를 보내야한다고 생각합니다.

내가 올바른 방향으로 가고 있습니까? 다른 사람이 이것을 시도 했습니까?

빌드 스크립트로 파일을 푸시하는 것은 쉽지만 100 개의 앱으로 확장하는 것을보고 있기 때문에 Ant, Nant 파일의 변경 사항을 최소화하고 싶습니다.

편집하다: 이 질문은 유망 해 보입니다 로그인 뒤 페이지에서 HTML을 얻습니다

편집하다: 지금은 작동합니다. 단지 구문 분석하려면 코드를 작성해야합니다.

WebClient ww = new WebClient();
ww.Credentials = CredentialCache.DefaultCredentials;
ww.DownloadString("http://yourteamcity.com/login.html");
ww.Headers.Add("Cookie",ww.ResponseHeaders["Set-Cookie"]);

NameValueCollection post = new NameValueCollection();
post.Add("username", "name");
post.Add("remember","true");
post.Add("submitLogin", "Login");
post.Add("publicKey","long thing to intercept with fiddler");
post.Add("encryptedPassword","not giving you this");
post.Add("_", "");
byte[] values = ww.UploadValues("http://yourteamcity.com/loginSubmit.html", "POST",post);
string s = ww.DownloadString("http://yourteamcity.com/overview.html");
도움이 되었습니까?

해결책

더 간단한 솔루션이 있습니다. 이것을 읽으십시오. http://www.jetbrains.net/confluence/display/tcd4/patterns+ occessing+build+artifacts

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top