CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[NodeJS] Sauvegarder une page HTML

Neooxys
Neooxys
Niveau 9
04 décembre 2016 à 22:30:43

Dans le cadre de mon projet de deuxième année, je dois créer un site permettant un partage de compte pour les voyages et les collocations.
Nous utilisons le NodeJS avec Express et Swig(rip) pour développer notre appli.
Je suis actuellement en train de travailler sur une transformation d'une page HTML générée dynamiquement avec des variables JSON en fichier local car j'ai besoin de la stocker pour travailler dessus après. Cela fait quelques jours que je suis à la recherche d'une solution viable
J'ai essayé d'utiliser les FileSystem en rentrant le code HTML dedans mais sans succès
[[sticker:p/1lmk]]

Si l'un d'entre vous avait une piste ou une solution je lui en serait infiniment reconnaissant!

lisarael
lisarael
Niveau 13
05 décembre 2016 à 10:06:09

Je ne suis pas sûr de bien comprendre ce que tu veux. Si tu veux simplement sauvegarder le résultat HTML d'un parsing serveur, tu vas dans ton navigateur, clic droit, enregistrer la page sous….
Si tu veux pouvoir générer ta page en local depuis les templates et les données statiques, sans serveur, le plus simple est de regarder s'il existe une interface en ligne de commande pour ton langage de templates (que je ne connais pas, personnellement, je travaille avec jade/pug), et sinon, passer par Grunt ou un task-runner du même genre.

jvcacc6
jvcacc6
Niveau 8
05 décembre 2016 à 11:39:54

FileSystem était la bonne solution pourtant :ok:

Tu as essayé de faire ça ?

fs.writeFile('helloworld.html', '<h1>Hello World!</h1>', function (err) {
  if (err) return console.log(err);
});
Message édité le 05 décembre 2016 à 11:42:26 par jvcacc6
LECROU
LECROU
Niveau 10
05 décembre 2016 à 13:31:57

Si tu utilises une lib de templating elle a peut-être des méthodes pour exporter le résultat sous forme de string que tu pourras exporter facilement.
Sinon tu devras le faire manuellement de la même maniere que tu construis ta page actuellement. Mais ça risque d'être sale :noel:

Neooxys
Neooxys
Niveau 9
05 décembre 2016 à 14:00:29

Je dois faire des requêtes vers une base de données et entrer ces valeurs dynamiquement dans la page html (j'utilise swig ici, exemple : <p> Récapitulatif de : '{{Event[0].DescEvent}}' </p>)
Le truc étant qu'il faut que les variables swig soient interprétés (ici on affiche la description de l'évènement) et je dois ensuite stocker le résultat final avec les variables transcrites en dur.

Le 05 décembre 2016 à 10:06:09 lisarael a écrit :
Je ne suis pas sûr de bien comprendre ce que tu veux. Si tu veux simplement sauvegarder le résultat HTML d'un parsing serveur, tu vas dans ton navigateur, clic droit, enregistrer la page sous….

C'est exactement le rendu que je veux mais je cherche une solution automatique avec du code ou des modules (je vois mal le client avoir à faire clic droit sur la page à chaque fois quoi :x)

Neooxys
Neooxys
Niveau 9
05 décembre 2016 à 15:45:58

J'ai trouvé la solution en générant le fichier directement avec le template du html :-)

Swig.CompileFile("template.html")
Var output = Template({variables})

Et ensuite
fs.Writefile("render.html",output,function(err){test erreur}});

Merci pour vos réponses

jvcacc6
jvcacc6
Niveau 8
06 décembre 2016 à 01:31:04

C'est exactement ce que je t'ai dis en fait :/

Sous forums
  • Aide à l'achat Mac
  • Steam Deck
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Macintosh
  • Hardware
La vidéo du moment