【问题标题】:How to get text/data from another website or time如何从另一个网站或时间获取文本/数据
【发布时间】:2015-01-22 06:05:57
【问题描述】:

我正在做一个学校项目,一个圣诞日历,在圣诞节之前的每一天都有一个新的插槽打开等。但是我很难找到一种获取当前日期/时间的好方法,以确保人们无法在插槽设置日期之前打开插槽。因此,要么我必须获取托管网站的服务器的时间,要么我必须以某种方式从另一个网站获取当前时间/日期。 或者如果您有任何建议。

【问题讨论】:

  • 您在服务器上使用 PHP 吗?
  • 如果在客户端JS中判断是否可以开门,则可以随时开门。可以绕过对服务器时间的检查。您需要重新考虑您的方法,并让您的服务器拒绝在给定数据之前发送描述门后内容的数据。
  • 使用来自 JS 的日期并在服务器端验证该日期。
  • 任何可用的代码?我建议使用 javascript 获取日期

标签: javascript html css date time


【解决方案1】:

您可以在页面的服务器端制作一个小脚本。只需让客户端将他的时间发送到服务器,服务器检查是否允许打开元素。

另一方面,我认为您应该有类似 AJAX 请求的东西来获取门后的“礼物”,因为您不应该在页面代码中包含它。如果时间到了,为什么不检查服务器上的 AJAX 请求?


编辑: 其他想法: 在 15 号门后,您可以有一个像 getDataForDay.php?day=15 这样的 AJAX 请求,在您的脚本上,您可以检查是否是第 15 天并返回礼物的 html,如果没有发送错误状态,如“错误的一天”


EDIT2:

另一方面,您对“问题”的另一种看法。我不知道你想在门后藏什么,也许这不是什么重要的东西(比如奖品),只有有趣的东西,比如图片或文字。 在那种情况下,我只会使用 js 在客户端制作所有内容。如果用户想“作弊”和操纵门,他会利用他的乐趣和这种日历背后的想法。

(你家里的巧克力日历也没有时间锁);-)

【讨论】:

  • 我们的老师强迫我们放学后留下来为他的公司制作日历。但也有一些真正的奖品。谢谢您的帮助。 :)
  • 很高兴我能提供帮助。
【解决方案2】:

您应该在应用程序的服务器端执行整个基于日期的拒绝策略。用户总是会弄乱您的客户端 JavaScript 或客户端与服务器之间的通信。

【讨论】:

    【解决方案3】:

    我建议通过服务器获取日期。您无法使用 Javascript (Same Origin Policy means that JS can only send AJAX requests to the same domain) 从另一台服务器获取数据。如果你想从服务器获取时间,在 PHP 中你可以使用date()。然而,对于大多数用例,您可以通过获取日期 client side 然后在 PHP 端验证此日期来使用客户端时间

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-22
      • 1970-01-01
      • 2017-09-06
      • 2014-03-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多