7
votes

Détecter la marque de périphérique

Je travaille sur Web Analytics. J'utilise le côté client JavaScript et Nodejs Server. Je sais que nous pouvons trouver Type de périphérique en utilisant userAgent , mais comment puis-je détecter la marque de périphérique (côté client ou serveur)?


2 commentaires

Une façon de savoir est d'utiliser un appareil réel et de visiter l'un de ces sites «Mes utilisateur» et découvrez. Pour autant que je sache, l'un de ces sites a obtenu mon modèle de périphérique. Il devrait répondre à votre question "est-ce possible" .


J'ai lu cette question comme demandant la marque de périphérique de l'écran ou du moniteur.


6 Réponses :


0
votes

La détection via les chaînes UserAgent peut entraîner des erreurs dans votre détection. Vous pouvez changer la chaîne de navigateur en ce que vous voulez. Dans la plupart des cas, cela ne vous dit pas quel appareil est.


0 commentaires

6
votes

Une bibliothèque qui analyse cette analyse pour vous est plate-forme.js , et vous pouvez l'utiliser soit le côté client ou le côté serveur, comme décrit dans leur page introduction ci-dessus.

Voici un exemple côté client: xxx

Notez que vous obtiendrez aucun fabricant sur navigateurs génériques mais devraient obtenir la marque sur des appareils mobiles, par exemple Apple, Samsung, etc.


1 commentaires

Merci pour des informations précieuses.Je testera et vous le fera savoir.



5
votes

Vous ne pouvez pas le faire directement; Le champ userAgent ne contient tout simplement pas le fournisseur. Cependant, vous pouvez créer une bibliothèque de jetons UserAgent que mappez sur des fournisseurs particuliers. Cela impliquera beaucoup de recherches et de tests sur une large gamme d'appareils.

Par exemple, tout ce qui avec "iOS", "iPhone" ou "iPad" dans le Manchent que vous pouvez planer en toute sécurité à "Apple". Ensuite, le Samsung Galaxy S3, par exemple, a le numéro de modèle dans le nomAgent, qui est "GT-I9300". Vous pouvez ensuite mapper cela sur "Samsung". ... et puis vous devrez répéter cela pour chaque autre appareil que vous souhaitez reconnaître. La recherche des chaînes d'agent utilisateur en ligne est probablement la solution la plus rapide.


0 commentaires

0
votes

Chaque donnée que vous pourriez obtenir de votre client peut être bloquée afin de ne pas vous attendre à ce que chaque utilisateur transmet seulement 100% de données correctes.

Mais vous pouvez obtenir les clients userAgent via req.headers ['utilisateur-agent'] dans NDEJS et voici une liste de nombreux navigateurs mobiles .


0 commentaires

1
votes

au côté serveur, vous pouvez le faire très facilement à l'aide du module NPM de périphérique et si vous utilisez Express.js, alors c'est facile comme gâteau.

Installation module. P>

var express = require('express');
var app = express();
var device = require('express-device');
app.use(device.capture());

app.get('/hello',function(req,res) {
  res.send("Hi to "+req.device.type.toUpperCase()+" User");
});

app.listen(3000);
console.log("Listening to Port 3000");


0 commentaires

0
votes

Dans mon cas, UA-Parser-JS était la meilleure solution gratuite. La version minifiée est sur https://github.com/faisalman/ua -parser-js / arbre / maître / dist

Ce que vous devez faire, c'est comme xxx

j'ai essayé plateforme.js et mobile-détecter .js avant celui-ci, mais leur plage de détection était trop étroite pour mon application.


0 commentaires