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

ASP.NET Discussion :

Requête côté client = OK, requête code behind = Pas OK


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé

    Développeur .NET
    Inscrit en
    Juillet 2008
    Messages
    176
    Détails du profil
    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2008
    Messages : 176
    Par défaut Requête côté client = OK, requête code behind = Pas OK
    Bonjour à tous et à toutes,

    Je suis confronté à un souci inédit pour moi et j'ai bien du mal à trouver une explication.

    Le prob est simple : intégrer un lecteur media branché sur une playlist Youtube.

    Je n'ai pas le choix, je dois utiliser le composant de Telerik. Il suffit de lui donner le nom de la Playlist et il fait la requête automatiquement pour récupérer les vidéos. C'est là que le problème apparaît : "Impossible de se connecter, le serveur ne répond pas, bla bla".

    Comme je suis dans un contexte entreprise dont je ne connais pas encore la stratégie réseau, j'en ai conclu que nous avions possiblement des ports bloqués qui nous empêcherait d'effectuer cette requête.

    Puis, en grattant un peu, j'ai trouvé l'url appelée par le composant (c'était pas dur, c'est gdata.youtube.com en l'occurrence).

    Pour être sûr que ce soit bien ce que je voulais, j'ai fait la requête à la va-vite via jQuery pour m'afficher bêtement le résultat dans une alert.

    Et là, parfait, j'ai ma réponse avec les infos désirées.

    Du coup, je décide de faire le travail de Telerik (récupérer la PL puis créer une liste de vidéos que j'enverrai "à la main" au composant).

    Je passe donc par une WebRequest et là, j'obtiens le même résultat qu'avec le composant (impossible de se connecter, le serveur ne répond pas, bla bla).

    J'ai du mal à comprendre pourquoi la requête fonctionne sans souci via jQuery mais pas en code behind.

    Auriez-vous une idée ?

    D'avance merci.

  2. #2
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Billets dans le blog
    3
    Par défaut
    Citation Envoyé par Arno_94 Voir le message
    Comme je suis dans un contexte entreprise dont je ne connais pas encore la stratégie réseau, j'en ai conclu que nous avions possiblement des ports bloqués qui nous empêcherait d'effectuer cette requête.
    A priori tu as toi-même donné la réponse ! Renseigne toi sur la stragégie réseau, ce sera déjà un bon point de départ. La seule chose dont on puisse être sûr c'est que le port 80 ne doit pas être bloqué, vu que c'est par-là que passe le traffic HTTP. A noter si la requête vers Youtube est en HTTPS, c'est le port 443 qui est utilisé...
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  3. #3
    Membre très actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Février 2007
    Messages : 871
    Par défaut
    Salut,

    Je ne puis que te conseiller d'utiliser fiddler un soft fait par telerik(gratuit) pour regarder ce qui est envoye par ton code dotnet.

    Tu avancera plus rapidement.

  4. #4
    Membre confirmé

    Développeur .NET
    Inscrit en
    Juillet 2008
    Messages
    176
    Détails du profil
    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2008
    Messages : 176
    Par défaut
    Merci pour ton aide.

    Toutefois, ce n'est plus pertinent de chercher du côté de Telerik car j'ai effectué la requête "à la main" via l'objet WebRequest et, systématiquement, il renvoie une erreur de serveur distant inaccessible tandis que la même requête de la même page mais côté client (via jQuery) me renvoie le résultat souhaité...

    Donc, oublions Telerik, le problème est : Une requête web fonctionne côté JavaScript mais ne fonctionne pas côté code behind. On peut aussi exclure le HTTPS de youtube car j'ai essayé avec des free feeds (http://gearside.com/public-json-feeds/) et j'obtiens le même résultat (réponse instantanée et correcte côté JS mais serveur injoignable côté code-behind...). Je pas comprendre...

  5. #5
    Membre très actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Février 2007
    Messages : 871
    Par défaut
    donc c'est bien un probleme de WebRequest/reseau, je preconise donc de lancer fiddler et tu verra les trames http envoyees/recues.

    Sans-doute une restriction de l'admin reseau...
    T'as essayer de lancer ton programme en mode admin ?

  6. #6
    Membre confirmé

    Développeur .NET
    Inscrit en
    Juillet 2008
    Messages
    176
    Détails du profil
    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2008
    Messages : 176
    Par défaut
    Bonjour,

    A nouveau, merci de t'intéresser à mon souci.

    Hier, j'ai copié coller le code pour le tester chez moi et effectivement, ça passe comme une lettre à la poste.

    Le prob vient donc bien d'une restriction réseau ici.

    Toutefois, j'ai du mal à comprendre pourquoi, dans le même projet, sur la même page, la requête n'aboutit pas via code behind et WebRequest mais qu'elle passe bien via jQuery côté aspx...

  7. #7
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Billets dans le blog
    3
    Par défaut
    Peut-on voir ton code et ton web.config ?
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

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

Discussions similaires

  1. code behind requête avec checkbox
    Par majduuus dans le forum C#
    Réponses: 1
    Dernier message: 02/09/2013, 16h53
  2. Réponses: 20
    Dernier message: 01/08/2013, 23h18
  3. Réponses: 2
    Dernier message: 12/09/2007, 21h47
  4. Réponses: 2
    Dernier message: 06/06/2005, 15h13
  5. Réponses: 10
    Dernier message: 24/01/2005, 17h00

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