J'essaie d'obtenir le code HTML de certaines pages Web,
J'ai un nom d'utilisateur et un mot de passe qui sont corrects mais je ne peux toujours pas le faire fonctionner,
Ceci est mon code: La messagerie est juste pour le tester,
Le problème est que chaque fois que j'arrive à cette ligne: p> I Obtenez une exception: P> Le serveur distant a renvoyé une erreur:
(401) non autorisé. P>
blockQuote> Comment puis-je résoudre ce problème? p> p>
3 Réponses :
Essayez de créer un NetworkCredential code> sans cette partie de domaine:
NetworkCredential nc = new NetworkCredential("?", "?");
J'ai essayé le code suivant et cela fonctionne.
private void Form1_Load(object sender, EventArgs e) { try { // Create Request HttpWebRequest req = (HttpWebRequest)WebRequest.Create(@"http://192.168.0.181/axis-cgi/com/ptz.cgi?move=up"); // Create Client WebClient client = new WebClient(); // Assign Credentials client.Credentials = new NetworkCredential("root", "a"); // Grab Data string htmlCode = client.DownloadString(@"http://192.160.0.1/axis-cgi/com/ptz.cgi?move=up"); // Display Data MessageBox.Show(htmlCode); } catch (WebException ex) { MessageBox.Show(ex.ToString()); } }
dans mon cas client.usefAltCredentials = true; code> l'astuce. p>