J'ai une application MVC que j'aimerais ajouter des statistiques personnalisées à. Pour certaines des statistiques, il serait agréable d'avoir un identifiant unique pour un appareil. P>
Par exemple, si j'ai une carte d'identité unique pour un abonné RSS, je peux surveiller le nombre actif d'abonnés RSS. P>
Je me demandais si quelqu'un connaissait quelque chose dans la demande Web pouvant être utilisé comme une pièce d'identité autre que l'IP (qui peut évidemment changer). Quelque chose comme un identifiant de périphérique ou quelque chose? P>
merci, p>
Oliver p>
4 Réponses :
autre que l'IP p> blockQuote>
Si votre site n'exige aucun type d'authentification afin de servir ce contenu, l'adresse IP est la seule chose que vous pourriez obtenir pour identifier les clients, et même cela pourrait ne pas être unique, par exemple, vous pourriez avoir deux clients Derrière le même proxy => aucun moyen de distinguer ces demandes dans ce cas. Une autre possibilité est d'utiliser des cookies, mais ce type de chute dans la première catégorie => Authentification. P>
Je prie de différer, si le client provient de l'appareil mobile, vous pouvez obtenir les identifiants uniques de cet appareil qui restent les mêmes sur le Web pour ce périphérique.
Il n'y a pas d'identifiant fourni par un navigateur, les préoccupations de confidentialité rendent très peu probable que tout fournisseur puisse jamais mettre en œuvre cela, maintenant au moins. P>
La seule option que vous avez est une forme de cookie. P>
Pour les flux RSS, vous pouvez éventuellement incorporer une carte d'identité unique aléatoire dans l'URL d'alimentation chaque fois qu'elle est rendue, de sorte que vous sachiez lorsque la personne qui a récupéré que l'URL a téléchargé votre flux. Cependant, si l'utilisateur a partagé cette URL avec d'autres que vous n'aviez aucune méthode de connaissance réelle. P>
La réponse courte est leur n'est pas (et avec une bonne raison étant donné des problèmes de confidentialité). La réponse plus utile serait que c'est quelque chose que vous feriez normalement en utilisant cookies a >. Vous définissez un cookie, puis vérifiez cela pour identifier le navigateur spécifique faisant la demande. p>
Bien sûr, cela ne signifie pas que les utilisateurs puissent rejeter les cookies, les supprimer et utiliser de nombreux navigateurs différents (chacun d'entre eux auront un cookie différent). Si vous êtes sournois (et je ne recommanderais pas cela), vous pouvez utiliser un objet partagé local (Cookie flash) car cela est moins susceptible d'être supprimé. À la fin de la journée, si quelqu'un ne veut pas être suivi, vous ne pouvez pas les forcer à être. P>
Généralement, cependant, si vous souhaitez analytics et suivis, envisagez d'utiliser une solution 3ème partie comme Google Analytics A >. Cela vous donnera des données très détaillées (bien que de nombreux cookies et javascript) sur vos visiteurs et leurs habitudes de navigation. P>
Voici quelques approches à prendre en compte.
Il y a quelques en-têtes HTTP que vous pouvez examiner cela peut vous aider à identifier un utilisateur ou un périphérique unique - certains feraient référence à la carte SIM Certains se réfèrent à l'appareil. Voici une liste que j'ai dérivé des en-têtes que Google Adsense Mobile utilise pour aider à suivre leur publicité: P>
x-dcmguid code> li>
-
x-up-subno code> li>
-
x-jphone-uid code> li>
-
x-em-uid code> li>
ul> Celles-ci sont probablement très populaires, mais il y aurait davantage d'en-têtes spécifiques aux fournisseurs / périphériques populaires. Vous pouvez commencer à rassembler tous les en-têtes que votre site reçoit et comptez le nombre de chacun de chacun que vous recevez et commencez à construire votre propre base de données d'en-têtes communs. P>
d'autres approches h1> cookies h2 >
Les cookies sont quelque chose qui peut être défini sur l'agent demandeur (navigateur par exemple) et renvoyé lorsque l'agent se rend à nouveau. Pour une liste de méthodes, consultez jamais cookie - le cookie pratiquement permanent - cela fonctionne en utilisant l'une des opérations suivantes Des méthodes dont au moins une fonctionnera: P>
- Standard HTTP Cookies
- Local Shared Objects (Flash Cookies)
- Silverlight Isolated Storage
- Storing cookies in RGB values of auto-generated, force-cached
PNGs using HTML5 Canvas tag to read pixels (cookies) back out
- Storing cookies in Web History
- Storing cookies in HTTP ETags
- Storing cookies in Web cache
- window.name caching
- Internet Explorer userData storage
- HTML5 Session Storage
- HTML5 Local Storage
- HTML5 Global Storage
- HTML5 Database Storage via SQLite
Pouvez-vous élaborer un peu plus? Vous souhaitez suivre chaque périphérique qui frappe votre serveur Web? Juste pour RSS ou également pour les demandes Web? Les cookies sont-ils une option?
Je voulais juste savoir s'il existe un identifiant unique non changeant pour un périphérique accessible dans la demande Web que le serveur reçoit. Quelque chose comme demande.browser.id? Je ne suis pas sûr de ce que la meilleure propriété est à utiliser pour cela.
Il semble que la plupart des "réponses" ici ne répondaient pas vraiment à votre question autre que de dire que vous ne pouvez pas le faire, ce qui est un peu contre le point d'une question qui est de trouver une réponse i> . Consultez ma réponse: Stackoverflow.com/questions/6445472/...