Domanda

Vorrei estrarre artefatti da teamcity.

Ho provato a usare c # e HtmlAgilityPack per andare al sito Web e trovare l'ultima versione e i suoi artefatti. Al momento sono bloccato al login, penso che devo solo inviare i cookie di sessione.

Sto andando nella direzione giusta, qualcun altro ha provato questo?

Mi rendo conto che inviare i file con gli script di compilazione è semplice ma mi piacerebbe ridurre al minimo le modifiche ai file Ant, NAnt poiché sto cercando di ridimensionare questo a 100 app.

Modifica: questa domanda sembra promettente Ottenere HTML da una pagina dietro un accesso

Modifica: funziona ora, ho solo bisogno di scrivere del codice per analizzarlo

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");
È stato utile?

Soluzione

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top