Sidhant Sidhant - 1 year ago 142
Scala Question

Spray Routing Cache dont cache 404

Hey guys im using the spray routing cache directive with routeCache method to cache my api calls.

But the issue is that if you api is returning 500 for some reason then in that case also spray is caching that and keeps returning 500 until the cache expires.

So how can i cache only 200 OK responses in spray cache and not others.

Answer Source

Following worked

Instead of doing

ctx.complete(ErrorCode, Error)





With failWith the value isFailure is set and so cache being done unset


To maintain proper status code, can use custom exception handlers as explained in above link

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download