Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/372.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 保护AJAX API以防止其他站点利用它_Javascript_Ruby On Rails_Ajax_Json - Fatal编程技术网

Javascript 保护AJAX API以防止其他站点利用它

Javascript 保护AJAX API以防止其他站点利用它,javascript,ruby-on-rails,ajax,json,Javascript,Ruby On Rails,Ajax,Json,我们目前正在开发一个使用简单JSON API(RoR)填充页面的站点。这些数据对客户是公开的,但却是我们服务的关键,我们希望确保我们的竞争对手不会窃取我们的数据。您使用什么方法来验证对API的AJAX请求是否合法?Re: 你用什么方法来验证 对API的AJAX请求是 合法的 我让他们先登录。通过Ajax的HTTP请求包括cookies,因此基于会话的身份验证可以很好地处理Ajax请求 因此,用户登录。然后页面发出Ajax请求以获取数据。Ajax api在使用数据响应之前检查有效会话。这是一种有趣

我们目前正在开发一个使用简单JSON API(RoR)填充页面的站点。这些数据对客户是公开的,但却是我们服务的关键,我们希望确保我们的竞争对手不会窃取我们的数据。您使用什么方法来验证对API的AJAX请求是否合法?

Re:

你用什么方法来验证 对API的AJAX请求是 合法的

我让他们先登录。通过Ajax的HTTP请求包括cookies,因此基于会话的身份验证可以很好地处理Ajax请求


因此,用户登录。然后页面发出Ajax请求以获取数据。Ajax api在使用数据响应之前检查有效会话。

这是一种有趣的方法。正如我所说,这是一个公共站点(不需要登录),但我可能会实现cookie,至少让他们更难实现服务器端bot。如果该站点是公共的,那么所有数据都是可用的(对任何人)。如果您想将数据访问限制在“客户”与“竞争对手”之间,那么您需要某种方式来区分他们。您还需要明确的TOS(服务条款),但TOS只有在您起诉竞争对手时才是真正的帮助。对于那些想要从你的网站上获取数据的有动机的竞争对手来说,再多的迷惑也无济于事。