opencomponents / oc-client-browser

The OpenComponents Browser client
MIT License
6 stars 8 forks source link

Fix fail loop #100

Closed ricardo-devis-agullo closed 1 year ago

ricardo-devis-agullo commented 1 year ago

Adding a "data-failed" attribute when the retries are exhausted, so it doesn't enter into a crashing loop.

The problem now is that renderUnloadedComponents will call itself once it finishes (in case some ocs spawn more ocs on the html), and this means that the retry limit won't be respected. So it will enter into a loop of calling the registry (without even respecting the retry interval). So what happens is that if a request for a component doesn't exist, the client could DDos the registry by flooding it with requests that return 404.

This adds an attribute, so even in recursion conditions, once a component has been retried, it's never retried again.