【发布时间】:2014-12-05 17:04:36
【问题描述】:
我有一个具有以下功能的网站:用户来到www.mysite.com/page.php。该页面上的 Javascript 对 www.mysite.com/api.php 进行 ajax API 调用,并在同一页面上显示结果 www.mysite.com/page.php
我害怕有人开始在自己的软件上使用我的 api.php,因为使用www.mysite.com/api.php 会花费我一些钱。因此,我希望只有访问过页面 www.mysite.com/page.php 的用户才能从 www.mysite.com/api.php 获得有效结果。用户将无法登录我的网站。
这样做的正确方法是什么?我想我可以在用户访问 page.php 时开始一个会话,然后以某种方式首先检查 api.php 是否存在具有有效会话 ID 的会话?
【问题讨论】:
-
最大的问题是如何区分机器人和人类。编写一个首先“访问”您的网站然后使用检索到的会话 id/token/其他任何内容来访问您的 API 的机器人并不难。
-
感谢大家的快速回复!即使没有 100% 的保护,PHP 会话可能是这种情况下最好的“软”保护。
标签: javascript php ajax api