user3125823
user3125823

Reputation: 1900

ReactiveBase headers

I'm experimenting with ReactiveSearch and so far have tried the DataSearch and ResultList components. I'm looking over the required component to look at all the props and I see this

<ReactiveBase
  app="appname"
  credentials="abcdef123:abcdef12-ab12-ab12-ab12-abcdef123456"
  headers={{
      secret: 'reactivesearch-is-awesome'
  }}

>
    <Component1 .. />
    <Component2 .. />
</ReactiveBase>

If the app is already secured using Appbaseio and the credentials gives my React app access to my ES cluster hosted there... what exactly could headers be used for? At first I thought username and password but you wouldn't do that.

What would be some of the scenarios where I SHOULD/COULD use the headers prop?

Upvotes: 1

Views: 422

Answers (1)

Divyanshu Maithani
Divyanshu Maithani

Reputation: 15036

The headers are added to each request sent to the url. Normally you wouldn't need these. But in production you might want to add a layer of proxy server between your elasticsearch cluster and the client side ReactiveSearch code, this is where headers can be helpful.

You could add authentication in the flow. For example, you could restrict the elasticsearch calls to authenticated users by sending an access token via the headers prop and then verifying it at the proxy server (example of proxy server).

You could also implement some custom logic by adding custom headers and a logic to handle them at the proxy server.

Upvotes: 1

Related Questions