【发布时间】:2018-08-16 06:33:55
【问题描述】:
我对 React 还是很陌生,所以如果这个问题太天真,请原谅我。据我了解,React 通常需要一个 API 来执行 XHR 请求。因此,具有非常基本技术背景的人可以通过查看 Web 浏览器调试控制台中的网络选项卡轻松了解该 API 的外观。
例如,人们可能会发现一个调用 api https://www.example.com/product/1 的页面,然后他们可以对产品 id 1 - 10000 进行暴力抓取以获取所有产品的数据。
https://www.example.com/api/v1/product/1
https://www.example.com/api/v1/product/2
https://www.example.com/api/v1/product/3
https://www.example.com/api/v1/product/4
https://www.example.com/api/v1/product/5
https://www.example.com/api/v1/product/6
...
即使使用用户身份验证,也可以在登录时使用相同的 cookie 或令牌来拨打电话并获取数据。
那么在 React 应用程序上防止抓取的最佳方法是什么?或者也许 api 不应该这样设计,因此我只是问错了问题?
【问题讨论】: