2016-07-14 7 views
1

Könnte Browser innerhalb eines Computers die MAC-Adresse des Geräts erhalten? Ich baue eine API, die eine eindeutige Identifikation der Maschine erhalten muss (im Idealfall könnte es MAC-Adresse sein), aber nach Diskussion und Forschung, ich weiß, Browser unterstützen dies nicht. Wenn nicht, könnte der Browser Gerätedaten erhalten, die zum Ersetzen der MAC-Adresse verwendet werden könnten?mac-adresse vom browser einschließlich chrome, windows, safari, firefox erhalten

+0

Sie können diese Informationen von JavaScript nicht bekommen. Es gibt keine Möglichkeit, jemanden direkt zu identifizieren, und was auch immer Sie versuchen, kann auch geändert werden. Warum müssen Sie die Maschine kennen? Vielleicht gibt es eine andere Lösung. – epascarello

+0

versuchen, die Maschine zu beschränken kann die App verwenden –

+0

So müssen Sie entweder eine Art von Plugin installieren, die Sicherheit umgehen muss, um die MAC-Adresse zu bekommen [(sogar Plugins haben keinen Zugriff)] (http://StackOverflow.com/questions/22281307/is-it-possible-to-get-mac-adresse-by-chrome-extension) oder du musst es neu überdenken und es so einrichten, dass Benutzer sich anmelden müssen, oder vielleicht eine native App anstelle von eine Web-App. – epascarello

Antwort

0

Die Antwort ist nein, ein Browser kann nicht auf die MAC-Adresse eines Geräts zugreifen, mit regulären Js. Haben Sie jedoch Knoten JS untersucht? Es hat eine Mac Plugin , die vielleicht in Verbindung mit einem anderen Plugin namens Browserify verwendet werden könnte, die Sie bekommen könnte, was Sie wollten. Der Vorteil der Verwendung von Node ist die riesige Menge an Plugins, mit denen Sie Dinge mit js in Ihrem Browser tun können, die Sie sonst nicht können.

Aber Sie könnten eine eindeutige UID beim Laden der Seite erstellen, und speichern Sie es irgendwie durch localstorage, und ziehen Sie, wenn Sie eine gerätespezifische ID benötigen. Dies funktioniert jedoch nicht über den Browser hinweg. Hoffe, das zeigt Ihnen in die richtige Richtung. Viel Glück.

0

Für IE und ActiveX erlaubt:

function networkInfo(){ 

var wmi = new ActiveXObject ("WbemScripting.SWbemLocator"); 
var service = wmi.ConnectServer("."); 


e = new Enumerator(service.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True")); 


for(; !e.atEnd(); e.moveNext()) { 
    var s = e.item(); 
    var macAddress = unescape(s.MACAddress); 

} 

return macAddress; 
} 
alert(networkInfo()); 
Verwandte Themen