Bonjour,

Voila je rencontre un petit problème avec mon code car je ne sais pas si ce que je recherche est possible ou du moins, je ne sais pas par ou commencer.

Ce que je fais

J'utilise pour la première fois AJAX, sur mon site donc je ne sais pas trop encore comment tout fonctionne mais j'ai réussis à faire fonctionner mes requêtes :
Quand on clique sur un lien, il va chercher le .html et l'affiche correctement sur la page en changeant l'url du navigateur (sans rafraichir).

Ce que je veux et ce que j'obtiens

Ce que je souhaiterais maintenant, c'est quand on veut partager un lien AJAX, on obtient la page initial sans aucun contenu Ajax chargé ou encore mieux, le bon contenue Ajax chargé. Par exemple :

On est sur la page avec aucun contenue Ajax
http://monsite.fr/chemin/
Puis on clique sur le lien et ça transforme l'URL
http://monsite.fr/chemin/ajax1.html

Maintenant, si je veux partager "http://monsite.fr/chemin/ajax1.html", j'obtiens juste le contenu de ajax1.html sans le header, footer...etc
Et j'aimerais que l'on affiche le contenue ajax1.html avec le header...etc

J'aimerais savoir si c'est possible et si ce procédé à un nom, que je puisse chercher une documentation sur le sujet.

Je ne sais pas si il faut gérer ça du coté client ou serveur mais si c'est le cas du serveur, j'utilise NodeJS.
Merci beaucoup d'avance pour vos réponses !

Si besoin, voici mon code JavaScript :

$('.linkAjax').click(function(event){
  event.preventDefault();
  var httpRequest = getHttpRequest();
  httpRequest.onreadystatechange = function () {
  if (httpRequest.readyState === 4) {
    if (httpRequest.status === 200) {

        $('.result').empty();
        $('.result').append(httpRequest.responseText);
    } else {
        // Le serveur a renvoyé un status d'erreur
    }
  }
}
var href = $(this).attr('href');
history.pushState({ path: this.path }, '', 'http://localhost:8080/'+href);
httpRequest.open('GET', href, true);
httpRequest.send();
})

EDIT :
Ok, petit edit j'ai réussis à faire une redirection sur la page initiale grâce à NodeJS

app.get('/jeux/:jeu/:guide', 
  function (req, res) {
  res.redirect('/jeux/'+req.params.jeu)
});

Maintenant, j'aimerais savoir si il est possible d'afficher le contenue plutôt qu'une redirection s'il vous plait

1 réponse


Je ne peux pas t aider mais regarde la librairie Barba.js ça devrait répondre à tes attentes.