IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

HTTPWebRequest forbidden, pourquoi ?


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Homme Profil pro
    IT Manager
    Inscrit en
    Janvier 2018
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : IT Manager
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2018
    Messages : 220
    Par défaut HTTPWebRequest forbidden, pourquoi ?
    Bonjour,

    Dans mon projet vb.net je dois ajouter une nouvelle fonctionnalité nécessitant l'utilisation d'API.
    L'API a été créée et j'essaie de faire un GET sur une URL.

    Lorsque je tente, j'ai l'erreur "the remote server returned an error (403) forbidden" lors que je passe pourtant bien les informations login/mot de passe...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Dim uristring As String = "https://url_de_l_API"
            Dim uri As New Uri(uristring)
            Dim req As HttpWebRequest = HttpWebRequest.Create(uri)
            req.Method = "GET"
            Dim MyCredentials As NetworkCredential
            MyCredentials = New System.Net.NetworkCredential(userName:="USER", password:="MOTDEPASSE")
            req.Credentials = MyCredentials
            'Make the web request and get the response
            Dim response As HttpWebResponse = req.GetResponse
    Je cherche sans succès sur internet depuis une petite heure déjà et comme je dois mettre ceci en place rapidement, je fais appel à vous
    Merci d'avance...

  2. #2
    Membre expérimenté
    Homme Profil pro
    IT Manager
    Inscrit en
    Janvier 2018
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : IT Manager
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2018
    Messages : 220
    Par défaut
    J'ai trouvé, je poste la solution si jamais ça peut aider quelqu'un...
    Il faut ajouter ceci, qui permet de passer proprement les credentials dans le header :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Dim username As String = "username"
            Dim password As String = "mot_de_passe"
            Dim encoded As String = System.Convert.ToBase64String(System.Text.Encoding.GetEncoding("ISO-8859-1").GetBytes(username + ":" + password))
            req.Headers.Add("Authorization", "Basic " + encoded)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Templates] Quel système utilisez-vous ? Pourquoi ?
    Par narmataru dans le forum Bibliothèques et frameworks
    Réponses: 270
    Dernier message: 26/03/2011, 01h15
  2. Que choisir ? C# , VB.NET, C++, Delphi ? pourquoi ?
    Par Louis-Guillaume Morand dans le forum Général Dotnet
    Réponses: 475
    Dernier message: 08/04/2010, 20h27
  3. Programmer encore en VB 6 c'est pas bien ? Pourquoi ?
    Par Nektanebos dans le forum Débats sur le développement - Le Best Of
    Réponses: 85
    Dernier message: 10/03/2009, 15h43
  4. Pourquoi ces directives #ifndef ... en haut des .h
    Par Patrick PETIT dans le forum C
    Réponses: 8
    Dernier message: 07/03/2003, 00h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo