我将我的记录存储在 Algolia 索引中userID
,每个索引都有一个关联的属性。我想执行搜索,以便过滤用户可见的记录,以使userID
s 匹配。我可以在前端使用instantsearch
库和userID
存储在 localStorage 中轻松地做到这一点。
在前端传递 userID 的问题
任何使用客户端的人都可以使用不同的 s 来操作 Algolia 请求,userID
这将过滤与这些 ID 相关的结果。这里有一个安全问题。但是正如 Algolia 在这里提到的,前端搜索速度可以提高 10 倍。
使用后端搜索的解决方案
可以实现这一点,将正常的 HTTP 请求发送到后端,其中包含相关的搜索参数和过滤器,并userID
在后端添加。之后在后端进行搜索并使用 HTTP 响应将数据发送回前端。速度较慢,因为它已经通过多个服务器只是为了添加userID
.
问题
我想知道是否还有一种使用前端搜索和保持安全性的解决方法,因为速度也很重要。我是使用 Algolia 的新手,但仍然不完全了解它的功能。
谢谢。