2012-01-21 4 views
0

Je construis une application Web où les utilisateurs peuvent créer des pages Web personnalisées qui tirent le contenu d'autres pages Web. Je connais quelques options pour ce faire, et je ne suis pas sûr de ce qui est le mieux, et s'il y a de meilleures solutions. En ce moment, je pourrais:Meilleure façon de diffuser du contenu html sur votre site?

  • Utilisez les iframes, ce qui (sorte de) accomplir ce que je veux, mais va forcer le client à télécharger et à rendre tout le contenu web, qui semble lent. J'ai entendu beaucoup de gens dire que les iframes sont passées et ne devraient pas être utilisées, etc.
  • Utilisez une bibliothèque comme wkhtmltopdf, qui rendra le html côté serveur et générera une image pdf de celui-ci. Cela fonctionnera bien, mais le résultat est juste une image, donc le texte ne sera pas sélectionnable, les liens ne seront pas cliquables, etc. Aussi, j'ai entendu dire que vous pourriez avoir des problèmes juridiques pour héberger le contenu Web d'autres personnes sur votre site sans permission.
  • Utilisez quelque chose comme phpquery pour rayer littéralement le contenu des autres sites. Cette option pourrait avoir les mêmes problèmes juridiques que l'option ci-dessus.

Est-ce que quelqu'un a fait quelque chose comme ça, ou quelqu'un a-t-il des idées?

Répondre

1

La solution la plus propre serait envoyer hors d'un côté serveur de requête HTTP, puis rendre le code HTML dans votre page que vous avez besoin, ce sera aussi nécessaire de changer toutes les urls de contenu et des liens pour être absolue

par exemple:

<img src="\images\banner.png"> 

fonctionnera sur le serveur distant, mais une fois dans votre page, l'image n'existera pas. La solution la plus pratique serait de limiter la fonctionnalité aux images et aux liens, puis de trouver/remplacer avec regex pour faire correspondre les URLs et y ajouter l'adresse source.

Vous rencontrerez cependant des problèmes légaux si vous renvoyez le contenu d'autres personnes de votre serveur, même juste html. L'utilisation d'un iframe serait la solution rapide et probablement la moins contraignante, car le navigateur envoie une requête normale au site pour le contenu.

+0

Ouais, pense que je vais devoir en tenir à iframes pour à présent. Merci d'avoir répondu! – Andrew

0

Je recommanderais DocRaptor pour générer des fichiers PDF à partir de HTML. Il fonctionne de la même manière que wkhtmltopdf, mais produit des fichiers PDF entièrement fonctionnels.

est ici un lien vers sa page d'accueil:

http://docraptor.com/

Et un lien vers la documentation de l'API:

http://docraptor.com/documentation

Questions connexes