Partage
  • Partager sur Facebook
  • Partager sur Twitter

AJAX et differentes url

node.js, javascript, AJAX

Sujet résolu
    19 octobre 2018 à 10:45:41

    Bonjour,

    Je rencontre une difficulté avec les requête AJAX sur mon serveur nodeJS. Depuis le début de la création de mon site j'utilise les requête AJAX de la sorte :

    • url dans la barre de navigation : http://localhost:8080
    • Requête AJAX côté client : $.post('login', {name: name, pw: pw}, function(data){//Actions});
    • Réception côté serveur : app.post('/login', function(req, resp){//Actions & réponses});

    J'ai récemment mis en place un système d'url qui permet au créateur d'un projet d'envoyer une lien de ce type http://localhost:8080/rejoin/?id=d64ez4deez4 à ses amis pour qu'ils puissent se connecter directement au projet. Malheureusement, mes requêtes AJAX ne marchent plus quand j'accède à mon site via le lien car je me retrouve avec une url dans ma barre de navigation identique au lien précédemment exposé. Même si j'efface directement /rejoin/?id=d64ez4deez4 dans la barre de navigation et que j'essaye de faire fonctionner une requête AJAX rien n'y fait. Pour que mes requêtes fonctionnent, il est nécessaire que j'arrive sur mon site avec url http://localhost:8080

    J'ai essayé de mettre l'url complète dans mes requêtes : $.post('http://localhost:8080/login', {name: name, pw: pw}, function(data){//Actions});, mais il me faudra à chaque fois tout changer quand je passerai du développement à la production et via et versa.

    Comment puis-je faire pour ressouder ce problème ?

    • Partager sur Facebook
    • Partager sur Twitter
      19 octobre 2018 à 12:17:14

      quand tu arrive depuis l'adresse localhost/rejoin, tu peux pas demander (dans la page) un Windows.location = localhost ?

      -
      Edité par ox223252 19 octobre 2018 à 12:18:18

      • Partager sur Facebook
      • Partager sur Twitter

      la connaissance est une chose qui ne nous appauvrit pas quand on la partage.

      Mon GitHub

        22 octobre 2018 à 10:00:37

        En fait j'ai résolu mon problème en passant par les socket (socket.io) que j'utilise aussi pour mon site. Lorsque quelqu'un se connecte au serveur je test l'url :

        url dans la barre de navigation : http://localhost:8080/?id=f64z65e6fz4fe

        io.sockets.on('connection', function (socket) {
           if (url.parse(socket.handshake.headers.referer, true).query.id) {
                //Mean, user come to join a project
        
                socket.emit('test', { join: true, id: url.parse(socket.handshake.headers.referer, true).query.id, message: "rejoin project" });
            } else {
                //Mean, user doesn't come to join a project
        
                socket.emit('test', { join: false, message: "Whitout rejoin" });
        
            }
        
        }


        Côté client, j'ai une ligne du code qui attend quoi faire si "test" lui est envoyé :

        socket.on('test', function (data) {
          //Afficher les pages souhaités et faire des requêtes AJAX si nécessaire.
        }



        -
        Edité par renjusyeager 22 octobre 2018 à 10:06:18

        • Partager sur Facebook
        • Partager sur Twitter

        AJAX et differentes url

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown