Oppure

Loading
13/06/08 8:38
punkettone90
ciao!
ho bisogno di fare un programma che mandi a un webserver dei dati usando il metodo post; mi sembra anche da quello che ho letto su internet che il .net non ha dei metodi specifici per usare il post, ma bisogna mandare i dati al server "manualmente" usando ad esempio questo codice


using System.Net;
...
string HttpPost (string uri, string parameters)
{
// parameters: name1=value1&name2=value2    
WebRequest webRequest = WebRequest.Create (uri);
//string ProxyString =
// System.Configuration.ConfigurationManager.AppSettings
// [GetConfigKey("proxy";)];
//webRequest.Proxy = new WebProxy (ProxyString, true);
//Commenting out above required change to App.Config
webRequest.ContentType = "application/x-www-form-urlencoded";
webRequest.Method = "POST";
byte[] bytes = Encoding.ASCII.GetBytes (parameters);
Stream os = null;
try
{ // send the Post
webRequest.ContentLength = bytes.Length; //Count bytes to send
os = webRequest.GetRequestStream();
os.Write (bytes, 0, bytes.Length); //Send it
}
catch (WebException ex)
{
MessageBox.Show ( ex.Message, "HttpPost: Request error",
MessageBoxButtons.OK, MessageBoxIcon.Error );
}
finally
{
if (os != null)
{
os.Close();
}
}

...
...
...

con lo stream vengono passati i byte corrispondenti ai parametri al server; la mia domanda è: i dati di un login (username e password) come devono essere formattati per poi venire trasformati in byte e essere mandati?

grazie!
aaa
13/06/08 13:17
Mte90
non fai prima a usare il Get cryptando i valori, mandando i dati del login cryptati?
aaa
13/06/08 14:11
Il Totem
Dovresti vedere quali sono i nomi dei campi della pagina web che richiedono la compilazione di nome utente e password per saperlo.
Mandandoli tramite Get criptati il server non ha modo di sapere quale tipo di algoritmo di è usato (e se è di criptazione o di hash) e quindi di utilizzare i dati.
aaa
14/06/08 9:11
punkettone90
grazie intanto delle risposte; su internet ho cercato ancora riguardo il metodo POST ma non ho trovato quasi niente, spiegano come usare il modo post in html, chiamarlo con javascript ma come usarlo nel .net niente; ho trovato una classe già pronta per l'invio con il metodo post ma che purtroppo (e ho avuto anche la conferma di Totem) non funziona.

A questo punto chiedo se qualcuno conosce come funziona il metodo POST, ossia come avviene la trasmissione dei dati dal client al server.

grazie! ;)
aaa