我公开提供HTML主页。使用Google Analytics,它可以提供一些观看者的人口统计信息,还有操作系统,浏览器等。
我希望从查看器中获取尽可能多的信息,尤其是操作系统登录名或用户名,并将它们保存在.txt
文件中。我怎么能用javascript(或我的HTML中嵌入的任何可能的方法)来做到这一点?
例如,在Java中,可以System.getProperty("user.name");
获取用户名。
答案 0 :(得分:1)
由你的
嵌入在我的HTML中的任何可能的方法
我假设您对包括php在内的任何技术持开放态度?
好的php有一个内置功能: 查找php documtation for user os and browser agent info
你也可以在php中试试这个:
<?php $_SERVER['HTTP_USER_AGENT']; ?>
它会返回类似的内容:
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727; .NET CLR 1.1.4322; IEMB3)
你也可以使用 Google code Browscap class 获得很多用户信息只需几行就可以了。
这是另一个现成的PHP解决方案codeproject所有你需要做的就是复制课程;实例化它,然后执行此操作;
echo $obj->showInfo('browser');
// get browser version
echo $obj->showInfo('version');
// get Operating system
echo $obj->showInfo('os');
将数据写入文本文件可能只有使用该类的浏览器信息;
<?php
$file = 'file.txt';
$data = $obj->showInfo('browser');
file_put_contents($file, $data);
?>
不想使用php?
尝试这个临时的JavaScript解决方案来获取用户的操作信息
var OSName ="a name to give the os if it doesnt match the listed";
if (navigator.appVersion.indexOf("Win")!=-1) OSName="Windows";
if (navigator.appVersion.indexOf("Mac")!=-1) OSName="MacOS";
if (navigator.appVersion.indexOf("X11")!=-1) OSName="UNIX";
if (navigator.appVersion.indexOf("Linux")!=-1) OSName="Linux";
这应该返回一个操作系统名称,如:windows或MacOS
document.write('Your OS: '+OSName);
或者尝试这个解决方案:
<div id="demo"></div>
<script type="text/javascript">
UserInfoString = "<span>Browser CodeName: " + navigator.appCodeName + "</span>";
UserInfoString+= "<span>Browser Name: " + navigator.appName + "</span>";
UserInfoString+= "<span>Browser Version: " + navigator.appVersion + "</span>";
UserInfoString+= "<span>Cookies Enabled: " + navigator.cookieEnabled + "</span>";
UserInfoString+= "<span>Platform: " + navigator.platform + "</span>";
UserInfoString+= "<span>User-agent header: " + navigator.userAgent + "</span>";
document.getElementById("demo").innerHTML=UserInfoString;
</script>