Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 6 sur 6
  1. #1
    Futur Membre du Club
    Inscrit en
    juin 2007
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : juin 2007
    Messages : 76
    Points : 18
    Points
    18

    Par défaut URL dynamique dans un site avec web service

    Bonjour,

    Je viens de récupéré un projet qui est un site intégré (gestion de la partie fidélité) sur le site du magasin. Mon problème est que ma solution fonctionne très bien sur mon poste de développement, mais ne fonctionne plus lorsqu'elle est déployé chez le prestataire.

    Mais n'étant pas un pro du dev web il y a quelque chose que je ne comprend pas.
    En local, lorsque je lance ma solution il me génère une url de type :
    Code :
    /WebFidelite/(S(kcdfbmoyp42ergkw2xcwjsnx))/Login.aspx
    C'est la partie "(S(kcdfbmoyp42ergkw2xcwjsnx))" qui me tracasse je ne trouve pas ou cela est généré dans le code...
    D'après ce que j'ai vu sur internet ça pourrait venir des appel de web service qui on un "comportement de l'url" en dynamique.

    Mais bon, j'ai l'impression que c'est un genre de session state. es-ce bien cela?
    Car une fois le login passé, je me trouve sur une url comme ceci :
    Code :
    /WebFidelite/(S(kcdfbmoyp42ergkw2xcwjsnx)F(AQLQaB7hLqfPCP7Qojgg4cjRCAAidwBsADEAMwA0ADkANwAxADAANAAyADgAZwBlAG4AQABtAGEAaQBsAC0AdABlAG0AcABvAHIAYQBpAHIAZQAuAGYAcgAAAS8A_3WkGUHRiGi8kJsu0_O63nqIgWSVSN0NSC0Zu57iK9td0))/WebForms/Pages/Account/Synthesis.aspx
    Et c'est la que mes soucis commence. Sur mon poste cela fonctionne très bien.
    Mais sur le site déployé, une fois connecté :
    - si je fais F5 après m'être connecté je reviens sur la page de login
    - si je clique sur un lien la page tombe en 404

    Ce que j'ai remarqué d'étrange sur les liens c'est que dans le href du les lien des menu j'ai
    Code :
    /(S(wl3oofxs333v5cy1yqkevr1t)F(oLVnQNQ3QcQCdwBsADEAMwA0ADkANwAxADAANAAyADgAZwBlAG4AQABtAGEAaQBsAC0AdABlAG0AcABvAHIAYQBpAHIAZQAuAGYAcgAAAPg0oJoZ2c0BAPhuutnL-s8BAAAvAAAA9yDI55TgjraYj2YXX9iAirsmViWM3_Zb_T1VDph4hts1))/(S(fd0rbbuxq1yiwx5dv04jyakk)F(TdUMnVN0Jn4CdwBsADEAMwA0ADkANwAxADAANAAyADgAZwBlAG4AQABtAGEAaQBsAC0AdABlAG0AcABvAHIAYQBpAHIAZQAuAGYAcgAAANbB3N4Y2c0BANb79h3L-s8BAAAvAAAAZEueevf7M2wMDu_HCihl3kIpfNT4ZO3BQI9UGTLxeyw1))/WebForms/Pages/Account/ModifyAccount.aspx
    alors que le lien qui tombe en erreur sur la page 404 est :
    Code :
    /(S(fd0rbbuxq1yiwx5dv04jyakk)F(TdUMnVN0Jn4CdwBsADEAMwA0ADkANwAxADAANAAyADgAZwBlAG4AQABtAGEAaQBsAC0AdABlAG0AcABvAHIAYQBpAHIAZQAuAGYAcgAAANbB3N4Y2c0BANb79h3L-s8BAAAvAAAAZEueevf7M2wMDu_HCihl3kIpfNT4ZO3BQI9UGTLxeyw1))/WebForms/Pages/Account/ModifyAccount.aspx
    On retrouve la partie de la page 404 dans la deuxième partie du lien...
    Et je comprend pas pourquoi dans le href du lien il me rajoute une nouvelle partie.
    On dirai qu'il régénère une deuxième partie dynamique.

    Si quelqu'un peu m'aiguiller ça m'aiderai car je tourne vraiment en rond...

    Merci d'avance

    ghosty

  2. #2
    Expert Confirmé Sénior
    Avatar de Immobilis
    Inscrit en
    mars 2004
    Messages
    6 550
    Détails du profil
    Informations forums :
    Inscription : mars 2004
    Messages : 6 550
    Points : 8 120
    Points
    8 120

    Par défaut

    Salut,

    Quelques indications ici: http://msdn.microsoft.com/en-us/library/aa479315.aspx

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  3. #3
    Futur Membre du Club
    Inscrit en
    juin 2007
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : juin 2007
    Messages : 76
    Points : 18
    Points
    18

    Par défaut

    Merci pour ta réponse ca me permet de comprendre un peu mieux.

    Alors en regardant mon code je retrouve dans mon web.config :
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
      <system.web>
        <authentication mode="Forms">
          <forms name=".ASPXFORMAUTH" cookieless="UseUri" defaultUrl="~/WebForms/Pages/Account/Synthesis.aspx" loginUrl="~/Login.aspx" protection="Validation" timeout="999999"/>
        </authentication>
    ...
        <sessionState cookieless="true" mode="InProc" timeout="20"/>
    ...
      </system.web>
    Par rapport a cela le timeout de 999999 me semble étrange, qu'en pense tu?

    Mon problème pourrait-il venir du session state avec le mode inProc ? Pourtant je vois que c'est gestion sur le serveur, ce qu'il me faut.
    Doit t'on configuré quelque chose en plus sur le serveur web du prestataire ?

    doit-je rajouter le paramêtre regenerateExpiredSessionId="true" ?

    Mais je le comprend toujours pas pourquoi dans mes liens l'url se retrouve avec deux identifiant de session...

  4. #4
    Expert Confirmé Sénior
    Avatar de Immobilis
    Inscrit en
    mars 2004
    Messages
    6 550
    Détails du profil
    Informations forums :
    Inscription : mars 2004
    Messages : 6 550
    Points : 8 120
    Points
    8 120

    Par défaut

    Citation Envoyé par ghosty177 Voir le message
    ma solution fonctionne très bien sur mon poste de développement, mais ne fonctionne plus lorsqu'elle est déployé chez le prestataire.
    Est-ce que tu l'as testé sur un serveur de préprod? Il ne s'agit pas de l'environnement de Visual Studio, ma ton IIS local, un serveur web sous Windows Server?
    Citation Envoyé par ghosty177 Voir le message
    Mais je le comprend toujours pas pourquoi dans mes liens l'url se retrouve avec deux identifiant de session...
    Le cookie de session et le cookie d'authentification sont deux choses différentes. Les identifiants de session ("S") sont créés pour chaque internaute qu'il soit authentifié ou pas. le "Forms Authentication ticket" est créé à la suite d'une authentification.

    S'agissant de service WCF, la logique est probablement différente. Avec un navigateur web le lien entre le client et le serveur est préservé tant que le navigateur n'est pas fermé. Avec des appels http le client est détruit quand le code a fini de s'exécuter. L'identifiant de session est perdu.

    Est-ce que tu peux englober tes morceaux d'url dans des blocs de citation ou de code
    /(S(fd0rbbuxq1yiwx5dv04jyakk)F(TdUMnVN0Jn4CdwBsADEAMwA0ADkANwAxADAANAAyADgAZwBlAG4AQABtAGEAaQBsAC0AdABlAG0AcABvAHIAYQBpAHIAZQAuAGYAcgAAANbB3N4Y2c0BANb79h3L-s8BAAAvAAAAZEueevf7M2wMDu_HCihl3kIpfNT4ZO3BQI9UGTLxeyw1))/WebForms/Pages/Account/ModifyAccount.aspx
    "Winter is coming" (ma nouvelle page d'accueil)

  5. #5
    Futur Membre du Club
    Inscrit en
    juin 2007
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : juin 2007
    Messages : 76
    Points : 18
    Points
    18

    Par défaut

    Est-ce que tu l'as testé sur un serveur de préprod? Il ne s'agit pas de l'environnement de Visual Studio, ma ton IIS local, un serveur web sous Windows Server?
    En fait je l'ai tester en local donc comme tu le dis avec mon IIS local.
    Et vu que ça fonctionnait on l'a déployé chez notre prestataire qui lui a un serveur web sous Windows Server.

    Le cookie de session et le cookie d'authentification sont deux choses différentes. Les identifiants de session ("S") sont créés pour chaque internaute qu'il soit authentifié ou pas. le "Forms Authentication ticket" est créé à la suite d'une authentification.
    Je suis d'accord avec toi je pense avoir compris le principe avec ton lien. le S pour la sessionId et le F pour l'authentification par le formulaire.

    mais si tu regarde mon premier post dans mon l'ien href du site je me retrouve avec deux fois la chaine S(...)F(...)/S(...)F(...) :
    Code :
    /(S(wl3oofxs333v5cy1yqkevr1t)F(oLVnQNQ3QcQCdwBsADEAMwA0ADkANwAxADAANAAyADgAZwBlAG4AQABtAGEAaQBsAC0AdABlAG0AcABvAHIAYQBpAHIAZQAuAGYAcgAAAPg0oJoZ2c0BAPhuutnL-s8BAAAvAAAA9yDI55TgjraYj2YXX9iAirsmViWM3_Zb_T1VDph4hts1))/(S(fd0rbbuxq1yiwx5dv04jyakk)F(TdUMnVN0Jn4CdwBsADEAMwA0ADkANwAxADAANAAyADgAZwBlAG4AQABtAGEAaQBsAC0AdABlAG0AcABvAHIAYQBpAHIAZQAuAGYAcgAAANbB3N4Y2c0BANb79h3L-s8BAAAvAAAAZEueevf7M2wMDu_HCihl3kIpfNT4ZO3BQI9UGTLxeyw1))/WebForms/Pages/Account/ModifyAccount.aspx
    et autre souci
    une fois connecté par le formulaire sur le site mis en ligne, si je fais F5 je reviens directement sur la page login. Comme s'il avait perdu la connexion.

  6. #6
    Futur Membre du Club
    Inscrit en
    juin 2007
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : juin 2007
    Messages : 76
    Points : 18
    Points
    18

    Par défaut

    Bon n'ayant pas trouvé d'autres pistes
    on est passé en cookieless= usecookies
    et problème résolu.
    Merci encore

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

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •