This only occurs when config.imegable.caching.active === true.
If a product image does not exists on the platform/backend the local image action will return empty.
The image file cache will still try to cache the result but fail, throwing an exception that will not be handled
This PR will add and error state to the imageAction and only cache the image if there is no error raised, thus preventing the unhandled error. I thought it would be better to not even try to cache if we know the is nothing to cache instead of just adding try/catch around the cache.save() statement.
I also created a specific edge case to forward the 404 not found status when the image is missing. I also changed the general image error status code from 400 to 500, because I thought it was more appropriate since it indicates an error with the server response and not an issue with the request.
This only occurs when
config.imegable.caching.active === true
.If a product image does not exists on the platform/backend the local image action will return empty. The image file cache will still try to cache the result but fail, throwing an exception that will not be handled
This PR will add and
error
state to theimageAction
and only cache the image if there is no error raised, thus preventing the unhandled error. I thought it would be better to not even try to cache if we know the is nothing to cache instead of just adding try/catch around thecache.save()
statement.I also created a specific edge case to forward the 404 not found status when the image is missing. I also changed the general image error status code from 400 to 500, because I thought it was more appropriate since it indicates an error with the server response and not an issue with the request.