2009-08-28 14 views
1

J'exporte un document au format PDF. Il est conservé sur un site Web publiquement accessible afin que tous les utilisateurs puissent le télécharger et le lire. Maintenant, je veux suivre cela. par exemple. "Combien de fois le PDF a été ouvert."Suivi au format PDF

Notez que ma question est de ne pas suivre lorsque je télécharge, nous devons savoir quand le fichier PDF est ouvert. Existe-t-il un type de script invoqué lors de l'ouverture du fichier PDF pour qu'Adobe Acrobat Reader envoie les détails à mon serveur?

Ce sont les détails que je voudrais:

  • IP
  • Date/Heure
  • Possbilly GEO Localisation.

Répondre

1

Oui, vous pouvez probablement le faire. PDF inclut une API Javascript, que certains lecteurs PDF (mais pas tous) implémentent. Je suis seulement certain qu'Acrobat et Foxit Reader le font, et il peut être désactivé dans les deux cas, pour des raisons de sécurité et de confidentialité. Cela dit, c'est probablement votre meilleur coup. J'ai regardé à travers le Javascript for Acrobat API Reference, et il semble que vous pourriez vous inscrire à l'événement "Page/Open" (page 368 dans ma copie), et à la réception de la première, faire un appel Net.HTTP (page 548) sur un serveur Web que vous utilisez. Vous obtiendrez ainsi la date/heure et l'adresse IP publique du client lisant le document, à partir de laquelle vous pouvez obtenir une géolocalisation en utilisant un service tel que GeoIP.

+1

Voici un exemple de la façon de le faire: http://stackoverflow.com/questions/8099927/tracking-code-into-a-pdf-or-postscript-file – CobaltBlue

0

Je ne suis pas sûr que ce soit possible. Bien que PDF puisse exécuter Javascript, le logiciel de lecture est naturellement paranoïaque lorsque des logiciels malveillants sont intégrés dans des documents "bénins", de sorte que le contexte d'exécution est assez restreint, avec des avertissements sur une éventuelle activité dangereuse.

Voir question précédente SO Can my PDF ping my server when it is opened?

Questions connexes