我正在尝试ReactiveSearch,到目前为止,已经尝试了DataSearch和ResultList组件。我正在查看所需的组件以查看所有道具,并且看到了
<ReactiveBase
app="appname"
credentials="abcdef123:abcdef12-ab12-ab12-ab12-abcdef123456"
headers={{
secret: 'reactivesearch-is-awesome'
}}
>
<Component1 .. />
<Component2 .. />
</ReactiveBase>
如果应用程序已经使用Appbaseio进行了安全保护,并且凭据使我的React应用程序可以访问托管在此的ES集群...标头究竟可以用作什么?起初,我以为用户名和密码是可以的,但您不会这么做的。
在某些情况下,我应该/应该使用headers属性?
答案 0 :(得分:1)
将headers
添加到发送到url
的每个请求中。通常,您不需要这些。但是在生产中,您可能想在Elasticsearch集群和客户端ReactiveSearch代码之间添加一层代理服务器,这在headers
可能会有所帮助。
您可以在流中添加身份验证。例如,您可以通过headers
道具发送访问令牌,然后在代理服务器(example of proxy server)上验证访问令牌,从而将Elasticsearch调用限制为经过身份验证的用户。
您还可以通过添加自定义标头和在代理服务器上处理它们的逻辑来实现一些自定义逻辑。