就上下文而言,我不是Web开发人员,也不是其他任何人,但是我偶尔会尝试一些小型项目,主要是出于娱乐目的,因此我可能会误用某些术语。
最近,我了解到存在两种在页面中提供数据的模式:
在第二种模式中,我将依靠API作为我的前端和数据库之间的桥梁,并且基本上我的前端将对端点进行调用,这些端点/api/something
返回用于填充页面的json对象。
尽管这似乎是最常见的模式,但它对我来说却是一个危险信号,因为:是什么导致人们无法从第三方应用程序访问我的API并以一种很好的结构化方式获取我的数据?例如,如果Stack Overflow将通过API调用在前端加载问题,则该API必须是开放的,并且代码在前端可用。什么会阻止某人使用其数据创建Stack Overflow的“克隆”,或者只是不断调用API进行数据挖掘?
我了解到,当页面完全由后端呈现时,可以简单地刮除数据,但与在一个很好的结构化json对象中公开提供数据相比,这似乎还没有问题。
通常,我给别人的建议是接受人们可能窃取您的内容。有办法让这个做起来难,但最终你的业务应该不会在这个铰链不发生。
减轻此问题的最明显方法是执行此操作,例如,进行僵尸程序检测(来自单个ip / ip块的过多请求)并将事情置于身份验证之后。
如果启用了身份验证,则可以为每个用户设置限制等级,并阻止使用Captchas自动注册。
什么会阻止某人使用其数据创建Stack Overflow的“克隆”,或者只是不断调用API进行数据挖掘?
人们正在积极地搜集SO,并创建具有被盗内容的网站。不过,stackoverflow的价值不仅限于内容。人们可以在Stackoverflow.com上找到他们,也没有理由要人们使用这些其他网站。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句