Quelle est la manière standard et la plus fiable de procéder? J'ai besoin de rediriger un utilisateur pour télécharger la version Mac ou la version Windows de mon logiciel quand il clique sur "Télécharger" sur mon site web.Comment détecter si l'utilisateur utilise Mac ou Windows sur le site Web
Répondre
en Javascript:
http://www.quirksmode.org/js/detect.html
Aucune méthode est parfaite, car l'utilisateur peut toujours usurper l'agent utilisateur.
Je recommande que:
1) Auto-rediriger vers une page avec le lien, ou auto mettre à jour le lien sur une page avec du texte en disant « Télécharger pour Mac » ou « Téléchargement pour Windows », de sorte que l'utilisateur sait ce qu'ils obtiennent avant de cliquer. 2) Donnez toujours à l'utilisateur la possibilité de télécharger l'autre version, au cas où votre détection ne fonctionnerait pas dans leur cas, ou si vous voulez télécharger sur une machine distante, et la transférer sur une autre machine plus tard.
Non fiable à 100%, mais vous pouvez en déduire beaucoup de user-agent string dans l'entête HTTP.
Vous devez utiliser navigator.platform
ou analyser navigator.userAgent
. Example.
Vous voulez regarder l'agent utilisateur trouvé dans l'en-tête http.
Il est facilement usurpée, mais vous pouvez prendre une assez bonne estimation par examing la chaîne de l'agent utilisateur. Vous pouvez le faire en JavaScript ou dans la langue de votre serveur. Comme vous pouvez le détecter de manière incorrecte, placez quelque part un "Voulez la version de Mac OS X" etc quelque part.
- 1. Comment détecter si mon site Web est relayé via le fichier hosts ou une application
- 2. Comment détecter si mon site est sur iframe ou site autonome sur Facebook
- 3. Comment détecter si Windows dirige le trafic sur LAN ou sur WiFi en C#
- 4. spam détecter dans le site Web
- 5. Comment détecter si une machine Windows exécute IPV4 ou IPV6?
- 6. Détecter si le code s'exécute sur le thread d'arrière-plan ou le thread UI (Dispatcher)
- 7. détecter le type de connexion pour l'iphone sur le site Web?
- 8. Comment détecter si une fenêtre est cachée (cmd-h) ou fermée (cmd-w) - Mac
- 9. Comment détecter si le visiteur de votre site Web provient d'un résultat de recherche Google?
- 10. Qu'est-ce que WebGrid utilise Microsoft sur son site Web?
- 11. Comment détecter si j'utilise MATLAB ou Octave?
- 12. Dans .NET comment détecter si le port TCP sur le serveur est ouvert et/ou actif?
- 13. Comment détecter si le fond d'écran a changé (Windows XP ou supérieur)?
- 14. API sur le site Web
- 15. Sous-dossier pour site Web sur Mac OS X
- 16. Obtenez le MAC de l'utilisateur du site Web ASP.NET
- 17. Android: détecter si PVPlayer ou AwesomePlayer?
- 18. Applications iPhone: Puis-je détecter si un utilisateur a installé une application sur un site Web?
- 19. Comment détecter l'adresse MAC de l'utilisateur consultant notre site web en PHP?
- 20. Site Web Les polices ne sont pas les mêmes sur Windows et Mac
- 21. Pouvons-nous détecter si un site est sur CDN?
- 22. Comment détecter si le signal GPS est faible ou élevé?
- 23. Détecter si Windows s'exécute depuis Parallels?
- 24. Détecter si IPv6 est activé sur les machines Windows
- 25. Site web ou pdf définitif sur Linux?
- 26. Détecter si l'ordinateur utilise une connexion mobile (3G/EDGE/GPRS) sous Windows
- 27. Comment puis-je détecter si mon assembly .NET s'exécute à partir d'un site Web ou d'une machine de bureau?
- 28. Comment vérifier si le navigateur fonctionne sur un MAC?
- 29. Comment reconnaître si un site web est ouvert sur un mobile ou un PC
- 30. Good Front end pour PostgreSQL sur Windows ou Mac
@Mitch, mais le navigateur peut * mentir * sur la chaîne user-agent, n'est-ce pas? – Graviton
Étant donné une motivation suffisante, un client réseau peut mentir à propos de n'importe quoi. Il n'y a rien d'intrinsèque à un paquet réseau vu par un serveur qui dit «mac» ou «windows», du moins rien qui ne puisse être falsifié. – Jherico
et l'avantage d'essayer d'usurper un site Web afin que vous obteniez le mauvais téléchargement serait quoi, exactement? – DOK