相关疑难解决方法(0)

网站可以捕获哪些识别信息?

如果网站的所有者想要尽可能地跟踪他们的用户,他们可以捕获什么(以及如何).您可能想知道这一点,以便捕获您创建的站点上的信息,或者作为用户,以防止站点捕获您的数据.

这是一个起始列表,但我确定我错过了一些重要的内容:

  1. 推荐人(什么网页有你到达的链接到这里).这是一个HTTP标头.
  2. 您正在浏览的计算机的IP地址.这可用于HTTP标头.
  3. 用户代理(您正在使用的浏览器).这是一个HTTP标头.
  4. Cookie放在之前的访问中.这是一个标题,仅在较早放置cookie且用户未删除时才可用.
  5. Flash Cookie放置在之前的访问中.有些用户会关闭Cookie,但很少有人知道如何关闭Flash Cookie.像普通的cookie一样工作,虽然它取决于Flash.
  6. Web错误.在第三方提供的页面上放置一些小的(如透明的单像素GIF).某些第三方(例如DoubleClick)将拥有自己的Cookie,并且可以与用户进行的其他访问相关联(收费!).

这些是我想到的常见问题,但必须有很多不寻常的问题.例如,这个:

  1. 用户时钟的时间.使用JavaScript传输它.

...在这里阅读之前我从未听说过的.


稍后添加(阅读本文后):

请尝试每个答案只放一个项目,然后我们可以使用投票来整理更好/更有趣的.以下列表可能效果不佳.

好吧......下一次我问这样的问题我会更好地设置它.


以下是我得到的一些最佳答案:

  1. James指出IE传输.NET框架版本.
  2. AviewAnew指出,您可以找到您访问过的网站.
  3. Mecki指出可以确定屏幕分辨率.
  4. Mecki 指出,您可以通过创建隐藏字段,然后使用JavaScript读取,确定浏览器缓存的任何自动填充信息.
  5. jjrv指出Flash可以列出用户机器上的字体.
  6. 肯特指出,你可以找到一个人访问过的网站.
  7. Silver Dragon指出,您可以使用Flash和AJAX确定鼠标在浏览窗口中的位置.
  8. Jim指出,您可以通过HTTP标头告诉用户在浏览器中配置了哪种语言.
  9. Jim还提到您可以检测人们是否使用Greasemonkey或类似的东西来修改页面.

browser security

16
推荐指数
1
解决办法
8163
查看次数

主要站点如何检测时区?

Facebook,myspace,MSN,craigslist; 所有检测时区并正确显示时间和日期,而无需提交表单或重新加载页面.

他们是如何做到的呢?我有一个非常大的网站,并有人发布需要显示正确时间的文章(根据时区上传下午3点或下午6点).

预加载?JavaScript的?加载页面并重新加载?我的网站目前有人进入该网站,并在第一次进入时通过javascript重新加载页面,其中包含其时区的更新信息.然而,这是一个非常讨厌的事情,我正在寻找另一种选择.我知道在加载时我可以发出一个ajax请求然后让它更新整个站点中的所有内容,并为用户提供正确的时区但是如果我必须单击返回,或者重新加载它询问我是否要再次发送信息这也很糟糕.那他们怎么做呢?

我正在玩Facebook,改变我在本地机器上的位置,它似乎每5分钟左右更新一次.

我是基于php,zend-framework的.

javascript php timezone zend-framework

16
推荐指数
2
解决办法
1万
查看次数

django 1.4如何从客户端自动获取用户的时区

我想知道是否有办法从客户端自动检索用户的时区.特别是在登录时.

我试图在登录页面中添加它(使用auth.login):

{% get_current_timezone as TIME_ZONE %}
Run Code Online (Sandbox Code Playgroud)

然后在登录表单中添加它

<input type="hidden" name="next" value="/redirect/?tz={{ TIME_ZONE }}">
Run Code Online (Sandbox Code Playgroud)

tz始终是服务器的时区.

python django timezone

13
推荐指数
3
解决办法
2万
查看次数

使用JavaScript或PHP自动检测用户当前的本地时间

我经常需要根据用户的实际本地时间或受时区影响而显示信息.获取用户当前时间和/或时区是否有可靠的方法?

关键问题:

  • 服务器端代码基于网站主机或用户的ISP
  • 客户端代码基于用户的系统时钟,操作太容易操作

关键问题:

  • 是否有必要确定用户的地理位置?
  • ISP时间可以准确指导吗?
  • 用户OS时钟可能会有所不同或被用户修改?

例子:

倒数:

只需1小时3分56秒!

问题:基于什么去的几秒钟; 用户的OS时钟,主机服务器时间(正负偏移),ISP系统时间.如果所有时区的时钟同时结束,这很容易,但如果它是用户本地时区的午夜倒计时,则会更加棘手)

编辑日志

项目发布于3:03 pm(10秒前)

问题:无论用户如何计算"10秒",调整时间以匹配用户的时区.

营业时间:

这家餐厅现在营业至午夜(AEST).

问题:给出午夜等时间可以通过从服务器端偏移来计算,但是使用psudo时间(例如现在),在2小时内取决于用户的时间.

PHP:使用time()输出服务器时间.这可以根据用户的时区进行偏移.

JavaScript:使用Date()输出用户的计算机时钟时间太容易操作.

javascript php timezone

11
推荐指数
2
解决办法
3万
查看次数

JavaScript时区信息如何获得America/Los_Angeles(或等效)

我想知道javascript中是否有内置函数,具有时区信息,如

America/Los_Angeles(或等价物)可以根据需要考虑的因素来确定吗?

类似于http://momentjs.com/timezone/在它的主页上做了吗?或者是否有这些区域的列表,我可以尝试建立自己的库?从我收集的内容http://momentjs.com/timezone/以vaule America/Los_Angeles为例来确定偏移量,但我找不到如何做相反的事情.

javascript timezone

8
推荐指数
0
解决办法
4356
查看次数

如何显示相对于绝对日期的跨浏览器?

我如何操纵日期,以便它们显示为"刚刚"..."5分钟前"..."3小时前"..."2010年6月22日下午1:45"以类似的方式如何SO显示每个问题的答案/评论旁边的日期?

更复杂的是,我的数据库中存储的日期是GMT时间(很好),但我希望它们出现在每个用户浏览器的时区中.

我已经尝试了John Resig的漂亮日期插件:http://bassistance.de/jquery-plugins/jquery-plugin-prettydate/,我编辑了它,以便从数据库中的GMT时间中减去时区偏移量.但是,此解决方案仅适用于FireFox.

在添加时区偏移后,这是'prettydate'函数:

format : function(time) {
var date = new Date(time);
var currentDate = new Date();
var timezoneOffsetInMilliseconds = currentDate.getTimezoneOffset() * 60000;
var currentTimeInMillisecondsUtc = currentDate.getTime();
var givenTimeInMillisecondsUtc = date.getTime()- timezoneOffsetInMilliseconds;
var diffInSeconds = ((currentTimeInMillisecondsUtc - givenTimeInMillisecondsUtc) / 1000);
var day_diff = Math.floor(diffInSeconds / 86400);

if (isNaN(day_diff) || day_diff < 0)
    return;

        // If longer than a month, calculate the date w/ timezone offset
        if (day_diff >= 31)
            return new Date(givenTimeInMillisecondsUtc).toLocaleString();

        var messages …
Run Code Online (Sandbox Code Playgroud)

javascript django jquery cross-browser

6
推荐指数
1
解决办法
445
查看次数

Web应用程序时区问题

我们在中西部(东部标准时间)启动并运行服务器的ASP.Net 2.0 Web应用程序.此时,我们所有的客户都与服务器位于同一时区.我们将在亚利桑那州(Mountain Standard Time)在线提供另一台服务器.

我们通过C#codebehind DateTime.UtcNow将所有时间存储在SQL 2005数据库中.

在测试期间,我们遇到了一些时区转换问题.我们的问题是,在网络浏览器中,我们的时间显示的是山地标准时间而不是我们正在测试的时区,即东部标准时间.

当我们输入新信息时,它会以UTC的形式存储在数据库中,但是当我们在浏览器中查看该信息时,它会显示Mountain Standard Time.下面是从数据库中获取UTC值并在浏览器中显示的代码.

lblUpdatedDate.Text = Convert.ToDateTime(dr["UpdatedDate"]).ToLocalTime().ToString();
Run Code Online (Sandbox Code Playgroud)

上面的代码返回服务器所在的Mountain Standard Time,而不是运行浏览器的Eastern Standard Time.我们如何有时间显示用户所在的位置?

c# asp.net timezone

5
推荐指数
1
解决办法
5367
查看次数

如何检索Web应用程序的客户端用户的时区?

问题是听起来 - 如何根据浏览器输入检索客户端用户的时区?如果重要的话,使用服务器端J2EE,但我不认为在这种情况下真的很重要.现在,HTTP是协议,它可以在它上线时使用HTTPS.

browser timezone client http

5
推荐指数
1
解决办法
6659
查看次数

在浏览器上本地化日期?

假设我有一个可以用文化不变格式表示的日期(ISO 8601).

我将选择2009年7月6日,UTC时间下午3:54在巴黎,也就是当地时间下午5:54在巴黎观察夏令时.

2009-07-06T15:54:12.000 + 02:00

OK ...是否有任何隐藏的标记宝石会告诉浏览器将该字符串转换为它的本地化版本?

最接近的解决方案是使用Javascript的Date.prototype.toLocaleString().它确实做得很好,但迭代很多日期可能很慢,而且它依赖于Javascript.

是否有任何HTML,CSS,XSLT或其他语义标记,浏览器将识别并自动呈现正确的本地化字符串?

编辑:

我目前使用的方法是用本地化的字符串替换HTML元素的文本:

从...开始:

<span class="date">2009/07/06 15:54:12 GMT</span>
Run Code Online (Sandbox Code Playgroud)

使用Javascript(使用jQuery):

var dates = $("span.date", context);
// use for loop instead of .each() for speed
for(var i=0,len=dates.length; i < len; i++) {
    // parse the date
    var d = new Date(dates.eq(i).text());
    // set the text to the localized string
    dates.eq(i).text(d.toLocaleString());
}
Run Code Online (Sandbox Code Playgroud)

从实际的角度来看,当Javascript运行时,它会使文本"闪烁"到新值,我不喜欢它.

从原则的角度来看,我不明白为什么我们需要这样做 - 浏览器应该能够本地化标准的东西,如货币,日期,数字,只要我们这样标记它.


后续问题:为什么浏览器/ Web没有这么简单的功能 - 采用标准数据项,并根据客户端的设置进行格式化?

html javascript css xslt localization

5
推荐指数
1
解决办法
4252
查看次数

如何在Javascript中获取浏览器的时区字符串?

我想在我的网页上显示用户 Timezone的全名。例如:

Eastern Standard Time (North America)
Pacific Daylight Time (North America)
West Africa Time
Run Code Online (Sandbox Code Playgroud)

我怎样才能在 Javascript 中做到这一点?我见过呈现如下内容的解决方案:America/New_York. 但这并不是我真正要寻找的。

javascript timezone

5
推荐指数
2
解决办法
1万
查看次数