Ho un'applicazione del dispositivo portatile Windows attiva.Net framework 3.5 che ha il requisito di accedere a un'API REST. L'API REST mi dà l'output JSON che elaborerò in seguito. Ho il seguente codice per quello: -
HttpWebRequest webRequest;
string result = String.Empty;
try
{
webRequest = (HttpWebRequest)WebRequest.Create(url);
webRequest.Method = "POST";
webRequest.KeepAlive = false;
webRequest.ContentType = "application/x-www-form-urlencoded";
using (WebResponse response = webRequest.GetResponse())
{
using (StreamReader streamReader = new StreamReader(response.GetResponseStream()))
{
result = streamReader.ReadToEnd();
}
}
}
catch (Exception ex)
{
result = ex.Message;
}
La variabile url contiene l'URL per l'API con alcuni parametri di query. Per esempio "http://www.something.com/Login?id=test&pwd=test".
Ora il mio problema è che non voglio usare la queryparametri stringa piuttosto che voglio usare i parametri di richiesta perché l'approccio sopra non funziona sempre perfettamente. Alcune volte ricevo un errore "Non autorizzato". Inoltre, ho un tokenId che devo inviare ogni volta che chiamo l'API e l'ID token è in formato base64.
Qualcuno può aiutarmi, come posso usare la funzione Richiedi parametro per inviare i valori dei parametri?
risposte:
2 per risposta № 1Usa il Headers
proprietà dell'oggetto richiesta.
webRequest.Headers.Add("id", "test");
webRequest.Headers.Add("pwd", "test");
webRequest.Headers.Add("token", myToken);