IE(ActiveXオブジェクト)経由でユーザーのMACアドレスが取得できることは知っています。
JavaScriptでユーザーのMACアドレスを取得する方法はありますか?
JavaScriptでMACアドレスを取得することはできません。主に、MACアドレスが実行中のコンピューターを一意に識別するため、セキュリティの脆弱性になるためです。
必要なのが一意の識別子だけの場合は、暗号化アルゴリズムを使用して自分で作成し、Cookieに保存することをお勧めします。
コンピュータのMACアドレスを本当に知る必要があり、内部アプリケーション用に開発している場合は、外部コンポーネントを使用してそれを行うことをお勧めします。IEにはActiveX、FirefoxにはXPCOM(拡張機能としてインストール)。
同じ問題を探していて、次のコードに出くわしました。
クライアントMACアドレス(Web)を取得する方法:
クライアントのMACアドレスを取得するには、JavaScriptとMicrosoftのActive Xコントロールに依存できます。ActiveXがIEで有効になっている場合にのみ、IEで機能します。 ActiveXObjectはFirefoxでは使用できません。, firefoxでは機能せず、IEで正常に動作しています。 このスクリプトはIE専用です。
<。!-スニペットを開始:js hide:false console:true babel:false -->。
function showMacAddress() {
var obj = new ActiveXObject("WbemScripting.SWbemLocator");
var s = obj.ConnectServer(".");
var properties = s.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration");
var e = new Enumerator(properties);
var output;
output = '<table border="0" cellPadding="5px" cellSpacing="1px" bgColor="#CCCCCC">';
output = output + '<tr bgColor="#EAEAEA"><td>Caption</td><td>MACAddress</td></tr>';
while (!e.atEnd()) {
e.moveNext();
var p = e.item();
if (!p) continue;
output = output + '<tr bgColor="#FFFFFF">';
output = output + '<td>' + p.Caption; +'</td>';
output = output + '<td>' + p.MACAddress + '</td>';
output = output + '</tr>';
}
output = output + '</table>';
document.getElementById("box").innerHTML = output;
}
showMacAddress();
<div id='box'></div>
<。!-終了スニペット-->。